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

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


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

The following commit has been merged in the master branch:
commit dacaee662918b732f06f35e696f3a78601837d5a
Author: Albert Vaca <albertvaka at gmail.com>
Date:   Sat Apr 4 16:32:15 2015 -0700

    Fixed daemon sending lots of identity packets at startup
    
    The way we were detecting the active network interfaces caused to detect
    all of them at the application startup.
---
 core/backends/lan/lanlinkprovider.cpp           | 11 ++++++-----
 core/backends/lan/lanlinkprovider.h             |  2 +-
 core/backends/linkprovider.h                    |  2 +-
 core/backends/loopback/loopbacklinkprovider.cpp |  9 +++------
 core/backends/loopback/loopbacklinkprovider.h   |  2 +-
 core/daemon.cpp                                 | 22 ++++++++++++----------
 6 files changed, 24 insertions(+), 24 deletions(-)

diff --git a/core/backends/lan/lanlinkprovider.cpp b/core/backends/lan/lanlinkprovider.cpp
index daba994..5887d0b 100644
--- a/core/backends/lan/lanlinkprovider.cpp
+++ b/core/backends/lan/lanlinkprovider.cpp
@@ -65,7 +65,7 @@ void LanLinkProvider::onStart()
         }
     }
 
-    onNetworkChange(QNetworkSession::Connected);
+    onNetworkChange();
 }
 
 void LanLinkProvider::onStop()
@@ -75,16 +75,16 @@ void LanLinkProvider::onStop()
 }
 
 //I'm in a new network, let's be polite and introduce myself
-void LanLinkProvider::onNetworkChange(QNetworkSession::State state)
+void LanLinkProvider::onNetworkChange()
 {
-    Q_UNUSED(state);
-
     if (!mTcpServer->isListening()) {
+        //Not started
         return;
     }
 
     Q_ASSERT(mTcpPort != 0);
 
+    qCDebug(KDECONNECT_CORE()) << "Sending identity packet";
     NetworkPackage np("");
     NetworkPackage::createIdentityPackage(&np);
     np.set("tcpPort", mTcpPort);
@@ -136,6 +136,7 @@ void LanLinkProvider::connectError()
     disconnect(socket, SIGNAL(connected()), this, SLOT(connected()));
     disconnect(socket, SIGNAL(error(QAbstractSocket::SocketError)), this, SLOT(connectError()));
 
+    qCDebug(KDECONNECT_CORE) << "Fallback (1), try reverse connection (send udp packet)";
     NetworkPackage np("");
     NetworkPackage::createIdentityPackage(&np);
     np.set("tcpPort", mTcpPort);
@@ -192,7 +193,7 @@ void LanLinkProvider::connected()
         //I think this will never happen, but if it happens the deviceLink
         //(or the socket that is now inside it) might not be valid. Delete them.
         delete deviceLink;
-        qCDebug(KDECONNECT_CORE) << "Fallback (2), try reverse connection";
+        qCDebug(KDECONNECT_CORE) << "Fallback (2), try reverse connection (send udp packet)";
         mUdpSocket.writeDatagram(np2.serialize(), receivedIdentityPackages[socket].sender, port);
     }
 
diff --git a/core/backends/lan/lanlinkprovider.h b/core/backends/lan/lanlinkprovider.h
index 1b9af8e..b379434 100644
--- a/core/backends/lan/lanlinkprovider.h
+++ b/core/backends/lan/lanlinkprovider.h
@@ -41,7 +41,7 @@ public:
     int priority() { return PRIORITY_HIGH; }
 
 public Q_SLOTS:
-    virtual void onNetworkChange(QNetworkSession::State state);
+    virtual void onNetworkChange();
     virtual void onStart();
     virtual void onStop();
     void connected();
diff --git a/core/backends/linkprovider.h b/core/backends/linkprovider.h
index 04aeac9..f4fc309 100644
--- a/core/backends/linkprovider.h
+++ b/core/backends/linkprovider.h
@@ -49,7 +49,7 @@ public:
 public Q_SLOTS:
     virtual void onStart() = 0;
     virtual void onStop() = 0;
-    virtual void onNetworkChange(QNetworkSession::State state) = 0;
+    virtual void onNetworkChange() = 0;
 
 Q_SIGNALS:
     //NOTE: The provider will destroy the DeviceLink when it's no longer accessible,
diff --git a/core/backends/loopback/loopbacklinkprovider.cpp b/core/backends/loopback/loopbacklinkprovider.cpp
index cbfc6c6..5442c82 100644
--- a/core/backends/loopback/loopbacklinkprovider.cpp
+++ b/core/backends/loopback/loopbacklinkprovider.cpp
@@ -31,14 +31,11 @@ LoopbackLinkProvider::LoopbackLinkProvider()
 
 LoopbackLinkProvider::~LoopbackLinkProvider()
 {
-    //delete echoDeviceLink;
+
 }
 
-void LoopbackLinkProvider::onNetworkChange(QNetworkSession::State state)
+void LoopbackLinkProvider::onNetworkChange()
 {
-    Q_UNUSED(state);
-    //kDebug(kdeconnect_kded()) << "Echo Device discovery emitted";
-
     LoopbackDeviceLink* newLoopbackDeviceLink = new LoopbackDeviceLink("loopback", this);
     Q_EMIT onConnectionReceived(identityPackage, newLoopbackDeviceLink);
 
@@ -51,7 +48,7 @@ void LoopbackLinkProvider::onNetworkChange(QNetworkSession::State state)
 
 void LoopbackLinkProvider::onStart()
 {
-    onNetworkChange(QNetworkSession::Connected);
+    onNetworkChange();
 }
 
 void LoopbackLinkProvider::onStop()
diff --git a/core/backends/loopback/loopbacklinkprovider.h b/core/backends/loopback/loopbacklinkprovider.h
index 361e652..9dcb529 100644
--- a/core/backends/loopback/loopbacklinkprovider.h
+++ b/core/backends/loopback/loopbacklinkprovider.h
@@ -37,7 +37,7 @@ public:
 
     virtual void onStart();
     virtual void onStop();
-    virtual void onNetworkChange(QNetworkSession::State state);
+    virtual void onNetworkChange();
 
 private:
     LoopbackDeviceLink* loopbackDeviceLink;
diff --git a/core/daemon.cpp b/core/daemon.cpp
index ec1fee7..a063589 100644
--- a/core/daemon.cpp
+++ b/core/daemon.cpp
@@ -45,6 +45,7 @@ struct DaemonPrivate
 
     //Every known device
     QMap<QString, Device*> mDevices;
+
 };
 
 Daemon* Daemon::instance()
@@ -82,15 +83,14 @@ Daemon::Daemon(QObject *parent)
     }
     setDiscoveryEnabled(true);
 
-    //Listen to connectivity changes
-    QNetworkConfigurationManager* manager = new QNetworkConfigurationManager();
-    QNetworkSession* network = new QNetworkSession(manager->defaultConfiguration());
-    connect(manager, SIGNAL(configurationAdded(QNetworkConfiguration)),
-            this, SLOT(forceOnNetworkChange()));
-    Q_FOREACH (LinkProvider* a, d->mLinkProviders) {
-        connect(network, SIGNAL(stateChanged(QNetworkSession::State)),
-                a, SLOT(onNetworkChange(QNetworkSession::State)));
-    }
+    //Detect when a network interface changes status (TODO: Move to the lan link provider?)
+    QNetworkConfigurationManager* networkManager;
+    networkManager = new QNetworkConfigurationManager(this);
+    connect(networkManager, &QNetworkConfigurationManager::configurationChanged, [this, networkManager](QNetworkConfiguration config) {
+        qCDebug(KDECONNECT_CORE()) << config.name() << " state changed to " << config.state();
+        qCDebug(KDECONNECT_CORE()) << "Online status: " << (networkManager->isOnline()? "online":"offline");
+        forceOnNetworkChange();
+    });
 
     //Register on DBus
     QDBusConnection::sessionBus().registerService("org.kde.kdeconnect");
@@ -111,8 +111,9 @@ void Daemon::setDiscoveryEnabled(bool b)
 
 void Daemon::forceOnNetworkChange()
 {
+    qCDebug(KDECONNECT_CORE) << "Sending onNetworkChange to " << d->mLinkProviders.size() << " LinkProviders";
     Q_FOREACH (LinkProvider* a, d->mLinkProviders) {
-        a->onNetworkChange(QNetworkSession::Connected);
+        a->onNetworkChange();
     }
 }
 
@@ -174,6 +175,7 @@ void Daemon::onDeviceReachableStatusChanged()
 
 void Daemon::setAnnouncedName(QString name)
 {
+    qCDebug(KDECONNECT_CORE()) << "Announcing name";
     KdeConnectConfig::instance()->setName(name);
     forceOnNetworkChange();
 }

-- 
kdeconnect packaging



More information about the pkg-kde-commits mailing list