summaryrefslogtreecommitdiffstats
path: root/src/plugins/networkinformation/android/qandroidnetworkinformationbackend.cpp
diff options
context:
space:
mode:
authorMårten Nordheim <marten.nordheim@qt.io>2021-09-29 09:30:05 +0200
committerMårten Nordheim <marten.nordheim@qt.io>2021-10-07 19:08:30 +0200
commit5b8a4c2063e6f16ffe394ebd26c16aefb0a3e852 (patch)
treee2882a57912146aa0e7f1f1b7541c62f1036efec /src/plugins/networkinformation/android/qandroidnetworkinformationbackend.cpp
parent589389843c1850e725972b4a6ba901d32bb59d73 (diff)
QNI:Android: unify behavior of callbacks
The first callback added for the android backend does not have the value as a parameter which is something the other callbacks have. Change it so it does. And promote the lambda to a real function. Change-Id: I06f10f7c79f33a5ea3154f2fc6d20d550cd7eca7 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src/plugins/networkinformation/android/qandroidnetworkinformationbackend.cpp')
-rw-r--r--src/plugins/networkinformation/android/qandroidnetworkinformationbackend.cpp37
1 files changed, 22 insertions, 15 deletions
diff --git a/src/plugins/networkinformation/android/qandroidnetworkinformationbackend.cpp b/src/plugins/networkinformation/android/qandroidnetworkinformationbackend.cpp
index 33103b00b7..14e42a9de8 100644
--- a/src/plugins/networkinformation/android/qandroidnetworkinformationbackend.cpp
+++ b/src/plugins/networkinformation/android/qandroidnetworkinformationbackend.cpp
@@ -74,6 +74,7 @@ public:
private:
Q_DISABLE_COPY_MOVE(QAndroidNetworkInformationBackend);
+ void updateConnectivity(AndroidConnectivityManager::AndroidConnectivity connectivity);
void updateTransportMedium(AndroidConnectivityManager::AndroidTransport transport);
bool m_valid = false;
@@ -115,21 +116,8 @@ QAndroidNetworkInformationBackend::QAndroidNetworkInformationBackend()
return;
m_valid = true;
setReachability(QNetworkInformation::Reachability::Unknown);
- connect(conman, &AndroidConnectivityManager::connectivityChanged, this, [this, conman]() {
- static const auto mapState = [](AndroidConnectivityManager::AndroidConnectivity state) {
- switch (state) {
- case AndroidConnectivityManager::AndroidConnectivity::Connected:
- return QNetworkInformation::Reachability::Online;
- case AndroidConnectivityManager::AndroidConnectivity::Disconnected:
- return QNetworkInformation::Reachability::Disconnected;
- case AndroidConnectivityManager::AndroidConnectivity::Unknown:
- default:
- return QNetworkInformation::Reachability::Unknown;
- }
- };
-
- setReachability(mapState(conman->networkConnectivity()));
- });
+ connect(conman, &AndroidConnectivityManager::connectivityChanged, this,
+ &QAndroidNetworkInformationBackend::updateConnectivity);
connect(conman, &AndroidConnectivityManager::captivePortalChanged, this,
&QAndroidNetworkInformationBackend::setBehindCaptivePortal);
@@ -138,6 +126,25 @@ QAndroidNetworkInformationBackend::QAndroidNetworkInformationBackend()
&QAndroidNetworkInformationBackend::updateTransportMedium);
}
+void QAndroidNetworkInformationBackend::updateConnectivity(
+ AndroidConnectivityManager::AndroidConnectivity connectivity)
+{
+ using AndroidConnectivity = AndroidConnectivityManager::AndroidConnectivity;
+ static const auto mapState = [](AndroidConnectivity state) {
+ switch (state) {
+ case AndroidConnectivity::Connected:
+ return QNetworkInformation::Reachability::Online;
+ case AndroidConnectivity::Disconnected:
+ return QNetworkInformation::Reachability::Disconnected;
+ case AndroidConnectivity::Unknown:
+ default:
+ return QNetworkInformation::Reachability::Unknown;
+ }
+ };
+
+ setReachability(mapState(connectivity));
+}
+
void QAndroidNetworkInformationBackend::updateTransportMedium(
AndroidConnectivityManager::AndroidTransport transport)
{