From 43434926c17ca63a88b6c7ccec75b2e52500680f Mon Sep 17 00:00:00 2001 From: Michail Vourlakos Date: Tue, 24 Jan 2017 20:32:22 +0200 Subject: [PATCH] fix #75, improve loadLayout on startup --loadLayout is called only once and when the activities service is in ready state --- app/dockcorona.cpp | 10 +++++++++- app/dockcorona.h | 2 ++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/app/dockcorona.cpp b/app/dockcorona.cpp index 8bec7ef1b..13a7b51c7 100644 --- a/app/dockcorona.cpp +++ b/app/dockcorona.cpp @@ -57,6 +57,11 @@ DockCorona::DockCorona(QObject *parent) setKPackage(package); qmlRegisterTypes(); connect(this, &Corona::containmentAdded, this, &DockCorona::addDock); + + if (m_activityConsumer && (m_activityConsumer->serviceStatus() == KActivities::Consumer::Running)) { + load(); + } + connect(m_activityConsumer, &KActivities::Consumer::serviceStatusChanged, this, &DockCorona::load); } @@ -80,7 +85,10 @@ DockCorona::~DockCorona() void DockCorona::load() { - loadLayout(); + if (m_activityConsumer && (m_activityConsumer->serviceStatus() == KActivities::Consumer::Running) && m_activitiesStarting) { + m_activitiesStarting = false; + loadLayout(); + } } void DockCorona::cleanConfig() diff --git a/app/dockcorona.h b/app/dockcorona.h index 1447866b6..4b9612e3e 100644 --- a/app/dockcorona.h +++ b/app/dockcorona.h @@ -78,6 +78,8 @@ private: void qmlRegisterTypes() const; int primaryScreenId() const; + bool m_activitiesStarting{true}; + QHash m_dockViews; QHash m_waitingDockViews;