[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdebase/runtime/activitymanager
From:       Chani Armitage <chanika () gmail ! com>
Date:       2011-01-12 18:02:34
Message-ID: 20110112180234.CCC7AAC8B3 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1214044 by chani:

this is the proper way to make icons show up when nepomuk starts :)


 M  +14 -2     ActivityManager.cpp  
 M  +7 -2      ActivityManager_p.h  


--- trunk/KDE/kdebase/runtime/activitymanager/ActivityManager.cpp #1214043:1214044
@@ -239,7 +239,7 @@
 }
 
 #ifdef HAVE_NEPOMUK
-Nepomuk::Resource ActivityManagerPrivate::activityResource(const QString & id) const
+Nepomuk::Resource ActivityManagerPrivate::activityResource(const QString & id)
 {
     kDebug() << "testing for nepomuk";
 
@@ -251,15 +251,27 @@
 }
 
 /* lazy init of nepomuk */
-bool ActivityManagerPrivate::nepomukInitialized() const
+bool ActivityManagerPrivate::nepomukInitialized()
 {
     if (m_nepomukInitCalled) return
         Nepomuk::ResourceManager::instance()->initialized();
 
     m_nepomukInitCalled = true;
 
+    connect(Nepomuk::ResourceManager::instance(), SIGNAL(nepomukSystemStarted()), \
this, SLOT(backstoreAvailable())); +
     return (Nepomuk::ResourceManager::instance()->init() == 0);
 }
+
+void ActivityManagerPrivate::backstoreAvailable()
+{
+    //emit q->BackstoreAvailable();
+    //kick the icons, so that clients don't need to know that they depend on nepomuk
+    for (QHash<QString, ActivityManager::State>::const_iterator i = \
activities.constBegin(); +         i != activities.constEnd(); ++i) {
+        emit q->ActivityChanged(i.key());
+    }
+}
 #endif // HAVE_NEPOMUK
 
 // Main
--- trunk/KDE/kdebase/runtime/activitymanager/ActivityManager_p.h #1214043:1214044
@@ -82,8 +82,8 @@
     QString activityName(const QString & id);
 
 #ifdef HAVE_NEPOMUK
-    Nepomuk::Resource activityResource(const QString & id) const;
-    bool nepomukInitialized() const;
+    Nepomuk::Resource activityResource(const QString & id);
+    bool nepomukInitialized();
     mutable bool m_nepomukInitCalled;
 #endif // HAVE_NEPOMUK
 
@@ -91,6 +91,7 @@
     void scheduleConfigSync();
     void configSync();
     void windowClosed(WId windowId);
+
     void startCompleted();
     void stopCompleted();
     void stopCancelled();
@@ -99,6 +100,10 @@
     void reallyStartActivity(const QString & id);
     void reallyStopActivity(const QString & id);
 
+#ifdef HAVE_NEPOMUK
+    void backstoreAvailable();
+#endif // HAVE_NEPOMUK
+
 private:
     ActivityManager * const q;
     QDBusInterface *ksmserverInterface; //just keeping it for the signals


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic