[SCM] kdeconnect packaging branch, master, updated. debian/0.9g-1-1183-g9d69498

Maximiliano Curia maxy at moszumanska.debian.org
Fri Oct 14 14:29:07 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-extras/kdeconnect.git;a=commitdiff;h=4230f4f

The following commit has been merged in the master branch:
commit 4230f4fb44b56e7ae0e3bb814eba79316b5db6ad
Author: Albert Vaca <albertvaka at gmail.com>
Date:   Sat Sep 12 04:46:37 2015 -0700

    Added a signal so plugins know when we update the config
---
 core/kdeconnectpluginconfig.cpp | 12 ++++++++++++
 core/kdeconnectpluginconfig.h   | 10 +++++++++-
 2 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/core/kdeconnectpluginconfig.cpp b/core/kdeconnectpluginconfig.cpp
index cb57cb2..980235c 100644
--- a/core/kdeconnectpluginconfig.cpp
+++ b/core/kdeconnectpluginconfig.cpp
@@ -22,6 +22,8 @@
 
 #include <QDir>
 #include <QSettings>
+#include <QDBusMessage>
+#include <QDBusConnection>
 
 #include "kdeconnectconfig.h"
 
@@ -29,6 +31,7 @@ struct KdeConnectPluginConfigPrivate
 {
     QDir mConfigDir;
     QSettings* mConfig;
+    QDBusMessage signal;
 };
 
 KdeConnectPluginConfig::KdeConnectPluginConfig(const QString& deviceId, const QString& pluginName)
@@ -38,6 +41,9 @@ KdeConnectPluginConfig::KdeConnectPluginConfig(const QString& deviceId, const QS
     QDir().mkpath(d->mConfigDir.path());
 
     d->mConfig = new QSettings(d->mConfigDir.absoluteFilePath("config"), QSettings::IniFormat);
+
+    d->signal = QDBusMessage::createSignal("/kdeconnect/"+deviceId+"/"+pluginName, "org.kde.kdeconnect.config", "configChanged");
+    QDBusConnection::sessionBus().connect("", "/kdeconnect/"+deviceId+"/"+pluginName, "org.kde.kdeconnect.config", "configChanged", this, SLOT(slotConfigChanged()));
 }
 
 KdeConnectPluginConfig::~KdeConnectPluginConfig()
@@ -60,4 +66,10 @@ void KdeConnectPluginConfig::set(const QString& key, const QVariant& value)
 {
     d->mConfig->setValue(key, value);
     d->mConfig->sync();
+    QDBusConnection::sessionBus().send(d->signal);
+}
+
+void KdeConnectPluginConfig::slotConfigChanged()
+{
+    Q_EMIT configChanged();
 }
diff --git a/core/kdeconnectpluginconfig.h b/core/kdeconnectpluginconfig.h
index 8e047d0..09bf68e 100644
--- a/core/kdeconnectpluginconfig.h
+++ b/core/kdeconnectpluginconfig.h
@@ -21,6 +21,7 @@
 #ifndef KDECONNECTPLUGINCONFIG_H
 #define KDECONNECTPLUGINCONFIG_H
 
+#include <QObject>
 #include <QDir>
 #include <QString>
 #include <QStringList>
@@ -30,8 +31,10 @@
 
 struct KdeConnectPluginConfigPrivate;
 
-class KDECONNECTCORE_EXPORT KdeConnectPluginConfig
+class KDECONNECTCORE_EXPORT KdeConnectPluginConfig : public QObject
 {
+    Q_OBJECT
+
 public:
     KdeConnectPluginConfig(const QString& deviceId, const QString& pluginName);
     ~KdeConnectPluginConfig();
@@ -59,6 +62,11 @@ public:
         return get(key, QVariant(defaultValue)).template value<T>(); //Important note: Awesome template syntax is awesome
     }
 
+private Q_SLOTS:
+    void slotConfigChanged();
+
+Q_SIGNALS:
+    void configChanged();
 
 private:
     QScopedPointer<KdeConnectPluginConfigPrivate> d;

-- 
kdeconnect packaging



More information about the pkg-kde-commits mailing list