diff options
author | Ville Voutilainen <ville.voutilainen@qt.io> | 2018-08-30 18:52:51 +0300 |
---|---|---|
committer | Ville Voutilainen <ville.voutilainen@qt.io> | 2018-08-31 08:56:47 +0000 |
commit | 65b663a9be5d27cbb77b48f9e392c9463416383a (patch) | |
tree | f135b8cc7d927e8451ba1faaf88dad30d8192e76 /src/networksettings/connman | |
parent | 010ca29d1eb902906b0005df7fb853dade60c778 (diff) |
Fix ip address tracking and display
Task-number: QTBUG-69814
Change-Id: Ifc90871c11aeddd1d07c5f1feb2a4292f0d36463
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
Diffstat (limited to 'src/networksettings/connman')
3 files changed, 10 insertions, 6 deletions
diff --git a/src/networksettings/connman/qnetworksettingsmanager_p.cpp b/src/networksettings/connman/qnetworksettingsmanager_p.cpp index cadcf6b..bd656c6 100644 --- a/src/networksettings/connman/qnetworksettingsmanager_p.cpp +++ b/src/networksettings/connman/qnetworksettingsmanager_p.cpp @@ -48,6 +48,7 @@ QNetworkSettingsManagerPrivate::QNetworkSettingsManagerPrivate(QNetworkSettingsM , m_agent(Q_NULLPTR) , m_serviceWatcher(Q_NULLPTR) , m_currentWifiConnection(Q_NULLPTR) + , m_currentWiredConnection(Q_NULLPTR) , m_initialized(false) { qDBusRegisterMetaType<ConnmanMapStruct>(); @@ -230,9 +231,9 @@ void QNetworkSettingsManagerPrivate::handleNewService(const QString &servicePath q, &QNetworkSettingsManager::clearConnectionState); connect(service, &QNetworkSettingsService::serviceConnected, - q, &QNetworkSettingsManager::setCurrentWifiConnection); + q, &QNetworkSettingsManager::setCurrentConnection); connect(service, &QNetworkSettingsService::serviceDisconnected, - q, &QNetworkSettingsManager::clearCurrentWifiConnection); + q, &QNetworkSettingsManager::clearCurrentConnection); if (service->name().length() > 0 && service->type() != QNetworkSettingsType::Unknown) { m_serviceModel->append(service); diff --git a/src/networksettings/connman/qnetworksettingsmanager_p.h b/src/networksettings/connman/qnetworksettingsmanager_p.h index d2146a9..b9133ab 100644 --- a/src/networksettings/connman/qnetworksettingsmanager_p.h +++ b/src/networksettings/connman/qnetworksettingsmanager_p.h @@ -72,6 +72,8 @@ public: void tryNextConnection(); void setCurrentWifiConnection(QNetworkSettingsService *connection) {m_currentWifiConnection = connection;} QNetworkSettingsService* currentWifiConnection() const {return m_currentWifiConnection;} + void setCurrentWiredConnection(QNetworkSettingsService *connection) {m_currentWiredConnection = connection;} + QNetworkSettingsService* currentWiredConnection() const {return m_currentWiredConnection;} public slots: void getServicesFinished(QDBusPendingCallWatcher *watcher); @@ -95,6 +97,7 @@ private: QDBusServiceWatcher *m_serviceWatcher; QString m_currentSsid; QNetworkSettingsService *m_currentWifiConnection; + QNetworkSettingsService *m_currentWiredConnection; bool m_initialized; }; diff --git a/src/networksettings/connman/qnetworksettingsservice_p.cpp b/src/networksettings/connman/qnetworksettingsservice_p.cpp index 65653aa..ec53956 100644 --- a/src/networksettings/connman/qnetworksettingsservice_p.cpp +++ b/src/networksettings/connman/qnetworksettingsservice_p.cpp @@ -400,9 +400,9 @@ void QNetworkSettingsServicePrivate::updateProperty(const QString& key, const QV oldState.setState(m_state.state()); value >> m_state; emit q->stateChanged(); - if (m_state.state() == QNetworkSettingsState::Ready && m_type.type() == QNetworkSettingsType::Wifi) + if (m_state.state() == QNetworkSettingsState::Ready || m_state.state() == QNetworkSettingsState::Online) emit q->serviceConnected(q); - if (m_state.state() == QNetworkSettingsState::Disconnect && m_type.type() == QNetworkSettingsType::Wifi) + if (m_state.state() == QNetworkSettingsState::Disconnect) emit q->serviceDisconnected(q); } else if (key == PropertyName) { @@ -413,9 +413,9 @@ void QNetworkSettingsServicePrivate::updateProperty(const QString& key, const QV QString value = qdbus_cast<QString>(val); value >> m_type; emit q->typeChanged(); - if (m_state.state() == QNetworkSettingsState::Ready && m_type.type() == QNetworkSettingsType::Wifi) + if (m_state.state() == QNetworkSettingsState::Ready || m_state.state() == QNetworkSettingsState::Online) emit q->serviceConnected(q); - if (m_state.state() == QNetworkSettingsState::Disconnect && m_type.type() == QNetworkSettingsType::Wifi) + if (m_state.state() == QNetworkSettingsState::Disconnect) emit q->serviceDisconnected(q); } else if (key == PropertyStrength) { |