From 6be5b7ccc569e1e811511b26e8cc04b80fc526f8 Mon Sep 17 00:00:00 2001 From: yinxu Date: Tue, 25 May 2021 09:57:03 -0700 Subject: [PATCH] Change the definition of noDefaultNetwork and noValidatedNetwork Currently SysUI only supports Cellular, WiFi or Ethernet as the default netwok, so if none of them is the default network, SysUI will display the no default network icon. Bug: 187611967 Test: Manual testing Change-Id: I60b210b17acfeaaa200e8196bba8ec2d43df9fbc --- .../statusbar/policy/NetworkControllerImpl.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java index 07e9fed134995..4ab07af920067 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java @@ -1023,6 +1023,11 @@ public class NetworkControllerImpl extends BroadcastReceiver mValidatedTransports.clear(); if (mLastDefaultNetworkCapabilities != null) { for (int transportType : mLastDefaultNetworkCapabilities.getTransportTypes()) { + if (transportType != NetworkCapabilities.TRANSPORT_CELLULAR + && transportType != NetworkCapabilities.TRANSPORT_WIFI + && transportType != NetworkCapabilities.TRANSPORT_ETHERNET) { + continue; + } if (transportType == NetworkCapabilities.TRANSPORT_CELLULAR && Utils.tryGetWifiInfoForVcn(mLastDefaultNetworkCapabilities) != null) { mConnectedTransports.set(NetworkCapabilities.TRANSPORT_WIFI); @@ -1045,11 +1050,15 @@ public class NetworkControllerImpl extends BroadcastReceiver Log.d(TAG, "updateConnectivity: mValidatedTransports=" + mValidatedTransports); } - mInetCondition = !mValidatedTransports.isEmpty(); + mInetCondition = mValidatedTransports.get(NetworkCapabilities.TRANSPORT_CELLULAR) + || mValidatedTransports.get(NetworkCapabilities.TRANSPORT_WIFI) + || mValidatedTransports.get(NetworkCapabilities.TRANSPORT_ETHERNET); pushConnectivityToSignals(); if (mProviderModel) { - mNoDefaultNetwork = mConnectedTransports.isEmpty(); + mNoDefaultNetwork = !mConnectedTransports.get(NetworkCapabilities.TRANSPORT_CELLULAR) + && !mConnectedTransports.get(NetworkCapabilities.TRANSPORT_WIFI) + && !mConnectedTransports.get(NetworkCapabilities.TRANSPORT_ETHERNET); mCallbackHandler.setConnectivityStatus(mNoDefaultNetwork, !mInetCondition, mNoNetworksAvailable); for (int i = 0; i < mMobileSignalControllers.size(); i++) {