diff options
author | Mårten Nordheim <marten.nordheim@qt.io> | 2021-05-26 11:55:46 +0200 |
---|---|---|
committer | Mårten Nordheim <marten.nordheim@qt.io> | 2021-06-08 14:54:16 +0200 |
commit | c34b596119b1fd05082b69b77eb86a99f658a22b (patch) | |
tree | 4f3bea272a20cfae452ce2687f98fcce4d15f8c5 /src/plugins | |
parent | 0baf1726111572872db080275a2e070facd5e110 (diff) |
QNetworkInformation: Some cleanup in NetworkManager
Change-Id: I7e0fce63883019278ceb9dc757bf10ee9d77097c
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src/plugins')
3 files changed, 10 insertions, 14 deletions
diff --git a/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagernetworkinformationbackend.cpp b/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagernetworkinformationbackend.cpp index f0627c092a..a22be93f6c 100644 --- a/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagernetworkinformationbackend.cpp +++ b/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagernetworkinformationbackend.cpp @@ -101,7 +101,6 @@ private: Q_DISABLE_COPY_MOVE(QNetworkManagerNetworkInformationBackend) QNetworkManagerInterface iface; - QNetworkManagerInterface::NMState prevState; }; class QNetworkManagerNetworkInformationBackendFactory : public QNetworkInformationBackendFactory @@ -137,15 +136,12 @@ private: QNetworkManagerNetworkInformationBackend::QNetworkManagerNetworkInformationBackend() { - prevState = iface.state(); - setReachability(reachabilityFromNMState(prevState)); - connect(&iface, &QNetworkManagerInterface::stateChanged, this, [this]() { - auto newState = iface.state(); - if (newState != prevState) { - prevState = newState; - setReachability(reachabilityFromNMState(prevState)); - } - }); + using NMState = QNetworkManagerInterface::NMState; + setReachability(reachabilityFromNMState(iface.state())); + connect(&iface, &QNetworkManagerInterface::stateChanged, this, + [this](NMState newState) { + setReachability(reachabilityFromNMState(newState)); + }); using ConnectivityState = QNetworkManagerInterface::NMConnectivityState; using TriState = QNetworkInformation::TriState; diff --git a/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagerservice.cpp b/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagerservice.cpp index bf9f156cb2..764507fd4b 100644 --- a/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagerservice.cpp +++ b/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagerservice.cpp @@ -98,7 +98,7 @@ QNetworkManagerInterface::~QNetworkManagerInterface() SLOT(setProperties(QMap<QString, QVariant>))); } -QNetworkManagerInterface::NMState QNetworkManagerInterface::state() +QNetworkManagerInterface::NMState QNetworkManagerInterface::state() const { if (propertyMap.contains("State")) return static_cast<QNetworkManagerInterface::NMState>(propertyMap.value("State").toUInt()); @@ -131,7 +131,7 @@ void QNetworkManagerInterface::setProperties(const QMap<QString, QVariant> &map) if (stateUpdate) { quint32 state = i.value().toUInt(); - Q_EMIT stateChanged(state); + Q_EMIT stateChanged(static_cast<NMState>(state)); } else if (connectivityUpdate) { quint32 state = i.value().toUInt(); Q_EMIT connectivityChanged(static_cast<NMConnectivityState>(state)); diff --git a/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagerservice.h b/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagerservice.h index 067ade6cbd..57c5aed763 100644 --- a/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagerservice.h +++ b/src/plugins/networkinformationbackends/networkmanager/qnetworkmanagerservice.h @@ -123,11 +123,11 @@ public: QNetworkManagerInterface(QObject *parent = nullptr); ~QNetworkManagerInterface(); - NMState state(); + NMState state() const; NMConnectivityState connectivityState() const; Q_SIGNALS: - void stateChanged(quint32); + void stateChanged(NMState); void connectivityChanged(NMConnectivityState); private Q_SLOTS: |