diff options
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) { |