solid-networkstatus: correct connman signal connection

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2022-04-13 16:01:52 +03:00
parent 43445d0986
commit d0aa1f0c30
2 changed files with 11 additions and 4 deletions

View file

@ -27,6 +27,7 @@
// for reference: // for reference:
// https://git.kernel.org/pub/scm/network/connman/connman.git/tree/doc/overview-api.txt // https://git.kernel.org/pub/scm/network/connman/connman.git/tree/doc/overview-api.txt
// https://git.kernel.org/pub/scm/network/connman/connman.git/tree/doc/manager-api.txt
#define CONNMAN_DBUS_SERVICE "net.connman" #define CONNMAN_DBUS_SERVICE "net.connman"
#define CONNMAN_DBUS_PATH "/" #define CONNMAN_DBUS_PATH "/"
@ -40,8 +41,11 @@ ConnmanStatus::ConnmanStatus(QObject *parent)
m_connman(CONNMAN_DBUS_SERVICE, CONNMAN_DBUS_PATH, CONNMAN_DBUS_INTERFACE, QDBusConnection::systemBus()) m_connman(CONNMAN_DBUS_SERVICE, CONNMAN_DBUS_PATH, CONNMAN_DBUS_INTERFACE, QDBusConnection::systemBus())
{ {
if (isSupported()) { if (isSupported()) {
connect(&m_connman, SIGNAL(PropertyChanged()), this, SLOT(connmanStateChanged())); connect(
connmanStateChanged(); &m_connman, SIGNAL(PropertyChanged(QString,QDBusVariant)),
this, SLOT(connmanStateChanged(QString,QDBusVariant))
);
connmanStateChanged(QString(), QDBusVariant());
} }
} }
@ -60,8 +64,11 @@ QString ConnmanStatus::serviceName() const
return QString::fromLatin1(CONNMAN_DBUS_SERVICE); return QString::fromLatin1(CONNMAN_DBUS_SERVICE);
} }
void ConnmanStatus::connmanStateChanged() void ConnmanStatus::connmanStateChanged(const QString &name, const QDBusVariant &value)
{ {
Q_UNUSED(name);
Q_UNUSED(value);
m_status = Solid::Networking::Unknown; m_status = Solid::Networking::Unknown;
QDBusReply<ConnmanPropertiesType> reply = m_connman.call("GetProperties"); QDBusReply<ConnmanPropertiesType> reply = m_connman.call("GetProperties");
if (!reply.isValid()) { if (!reply.isValid()) {

View file

@ -38,7 +38,7 @@ public:
QString serviceName() const final; QString serviceName() const final;
private Q_SLOTS: private Q_SLOTS:
void connmanStateChanged(); void connmanStateChanged(const QString &name, const QDBusVariant &value);
private: private:
Solid::Networking::Status m_status; Solid::Networking::Status m_status;