[SCM] ktp-contact-applet packaging branch, master, updated. debian/15.12.1-1-966-gde83ac5

Maximiliano Curia maxy at moszumanska.debian.org
Sat May 28 00:10:48 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-desktop-applets.git;a=commitdiff;h=11bb90b

The following commit has been merged in the master branch:
commit 11bb90b1ed5ff96d01c6331bb2effa0eea3d50e1
Author: Abner Silva <abner.silva at kdemail.net>
Date:   Tue Jul 21 22:56:25 2009 +0000

    Implemented changing presence support.
    
    svn path=/trunk/playground/base/plasma/applets/presence/; revision=1000751
---
 presence/src/presence.cpp | 30 ++++++++++++++++++++++++++++++
 presence/src/presence.h   |  4 +++-
 2 files changed, 33 insertions(+), 1 deletion(-)

diff --git a/presence/src/presence.cpp b/presence/src/presence.cpp
index 6a352ed..342868d 100644
--- a/presence/src/presence.cpp
+++ b/presence/src/presence.cpp
@@ -26,6 +26,7 @@
 
 // Plasma
 #include <Plasma/Theme>
+#include <Plasma/Service>
 
 // Kde
 #include <KColorScheme>
@@ -102,6 +103,8 @@ void PresenceApplet::onSourceAdded(const QString &source)
     if (!m_accounts.contains(source)) {
         AccountWidget *account = new AccountWidget();
         account->setId(source);
+        connect(account, SIGNAL(presenceChanged(const QString&, const QString&)),
+                this, SLOT(onPresenceChanged(const QString&, const QString&)));
         m_layout->addItem(account);
         m_accounts[source] = account;
         m_engine->connectSource(source, this);
@@ -286,5 +289,32 @@ void PresenceApplet::setMasterStatusMessage(const QString & message)
     m_masterStatusMessage = message;*/
 }
 
+void PresenceApplet::onPresenceChanged(const QString &presence,
+        const QString &msg)
+{
+    Q_UNUSED(msg);
+
+    AccountWidget *account = static_cast<AccountWidget *>(sender());
+
+    Q_ASSERT(account);
+
+    Plasma::Service *service = m_engine->serviceForSource(account->id());
+
+    if (service != NULL) {
+        KConfigGroup op = service->operationDescription("setPresence");
+        op.writeEntry("status", presence);
+        connect(service, SIGNAL(finished(Plasma::ServiceJob *)),
+                this, SLOT(onJobCompleted()));
+        service->startOperationCall(op);
+    }
+}
+
+void PresenceApplet::onJobCompleted()
+{
+    Plasma::Service *service = static_cast<Plasma::Service *>(sender());
+
+    if (service)
+        service->deleteLater();
+}
 #include "presence.moc"
 
diff --git a/presence/src/presence.h b/presence/src/presence.h
index cec275e..1f24c19 100644
--- a/presence/src/presence.h
+++ b/presence/src/presence.h
@@ -51,7 +51,9 @@ private Q_SLOTS:
     void onSourceRemoved(const QString &source);
     void dataUpdated(const QString &source,
             const Plasma::DataEngine::Data &data);
-    // void onItemChanged(QStandardItem *item);
+    void onPresenceChanged(const QString &presence,
+            const QString &msg);
+    void onJobCompleted();
 
 private:
     void updateMasterIcon();

-- 
ktp-contact-applet packaging



More information about the pkg-kde-commits mailing list