Merge "[RESTRICT AUTOMERGE] Hide Wi-Fi Scanning message when Location is disabled (QS Internet Dialog)" into sc-qpr1-dev
This commit is contained in:
@@ -331,7 +331,7 @@ public class InternetDialog extends SystemUIDialog implements
|
|||||||
showProgressBar();
|
showProgressBar();
|
||||||
final boolean isDeviceLocked = mInternetDialogController.isDeviceLocked();
|
final boolean isDeviceLocked = mInternetDialogController.isDeviceLocked();
|
||||||
final boolean isWifiEnabled = mWifiManager.isWifiEnabled();
|
final boolean isWifiEnabled = mWifiManager.isWifiEnabled();
|
||||||
final boolean isWifiScanEnabled = mWifiManager.isScanAlwaysAvailable();
|
final boolean isWifiScanEnabled = mInternetDialogController.isWifiScanEnabled();
|
||||||
updateWifiToggle(isWifiEnabled, isDeviceLocked);
|
updateWifiToggle(isWifiEnabled, isDeviceLocked);
|
||||||
updateConnectedWifi(isWifiEnabled, isDeviceLocked);
|
updateConnectedWifi(isWifiEnabled, isDeviceLocked);
|
||||||
updateWifiScanNotify(isWifiEnabled, isWifiScanEnabled, isDeviceLocked);
|
updateWifiScanNotify(isWifiEnabled, isWifiScanEnabled, isDeviceLocked);
|
||||||
|
|||||||
@@ -76,6 +76,7 @@ import com.android.systemui.dagger.qualifiers.Background;
|
|||||||
import com.android.systemui.dagger.qualifiers.Main;
|
import com.android.systemui.dagger.qualifiers.Main;
|
||||||
import com.android.systemui.plugins.ActivityStarter;
|
import com.android.systemui.plugins.ActivityStarter;
|
||||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||||
|
import com.android.systemui.statusbar.policy.LocationController;
|
||||||
import com.android.systemui.statusbar.policy.NetworkController;
|
import com.android.systemui.statusbar.policy.NetworkController;
|
||||||
import com.android.systemui.statusbar.policy.NetworkController.AccessPointController;
|
import com.android.systemui.statusbar.policy.NetworkController.AccessPointController;
|
||||||
import com.android.systemui.toast.SystemUIToast;
|
import com.android.systemui.toast.SystemUIToast;
|
||||||
@@ -150,6 +151,7 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
private WindowManager mWindowManager;
|
private WindowManager mWindowManager;
|
||||||
private ToastFactory mToastFactory;
|
private ToastFactory mToastFactory;
|
||||||
private SignalDrawable mSignalDrawable;
|
private SignalDrawable mSignalDrawable;
|
||||||
|
private LocationController mLocationController;
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
static final float TOAST_PARAMS_HORIZONTAL_WEIGHT = 1.0f;
|
static final float TOAST_PARAMS_HORIZONTAL_WEIGHT = 1.0f;
|
||||||
@@ -199,7 +201,8 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
GlobalSettings globalSettings, KeyguardStateController keyguardStateController,
|
GlobalSettings globalSettings, KeyguardStateController keyguardStateController,
|
||||||
WindowManager windowManager, ToastFactory toastFactory,
|
WindowManager windowManager, ToastFactory toastFactory,
|
||||||
@Background Handler workerHandler,
|
@Background Handler workerHandler,
|
||||||
CarrierConfigTracker carrierConfigTracker) {
|
CarrierConfigTracker carrierConfigTracker,
|
||||||
|
LocationController locationController) {
|
||||||
if (DEBUG) {
|
if (DEBUG) {
|
||||||
Log.d(TAG, "Init InternetDialogController");
|
Log.d(TAG, "Init InternetDialogController");
|
||||||
}
|
}
|
||||||
@@ -227,6 +230,7 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
mWindowManager = windowManager;
|
mWindowManager = windowManager;
|
||||||
mToastFactory = toastFactory;
|
mToastFactory = toastFactory;
|
||||||
mSignalDrawable = new SignalDrawable(mContext);
|
mSignalDrawable = new SignalDrawable(mContext);
|
||||||
|
mLocationController = locationController;
|
||||||
}
|
}
|
||||||
|
|
||||||
void onStart(@NonNull InternetDialogCallback callback, boolean canConfigWifi) {
|
void onStart(@NonNull InternetDialogCallback callback, boolean canConfigWifi) {
|
||||||
@@ -788,6 +792,14 @@ public class InternetDialogController implements WifiEntry.DisconnectCallback,
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@WorkerThread
|
||||||
|
boolean isWifiScanEnabled() {
|
||||||
|
if (!mLocationController.isLocationEnabled()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return mWifiManager.isScanAlwaysAvailable();
|
||||||
|
}
|
||||||
|
|
||||||
static class WifiEntryConnectCallback implements WifiEntry.ConnectCallback {
|
static class WifiEntryConnectCallback implements WifiEntry.ConnectCallback {
|
||||||
final ActivityStarter mActivityStarter;
|
final ActivityStarter mActivityStarter;
|
||||||
final WifiEntry mWifiEntry;
|
final WifiEntry mWifiEntry;
|
||||||
|
|||||||
@@ -49,6 +49,7 @@ import com.android.systemui.broadcast.BroadcastDispatcher;
|
|||||||
import com.android.systemui.dagger.qualifiers.Main;
|
import com.android.systemui.dagger.qualifiers.Main;
|
||||||
import com.android.systemui.plugins.ActivityStarter;
|
import com.android.systemui.plugins.ActivityStarter;
|
||||||
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
import com.android.systemui.statusbar.policy.KeyguardStateController;
|
||||||
|
import com.android.systemui.statusbar.policy.LocationController;
|
||||||
import com.android.systemui.statusbar.policy.NetworkController;
|
import com.android.systemui.statusbar.policy.NetworkController;
|
||||||
import com.android.systemui.statusbar.policy.NetworkController.AccessPointController;
|
import com.android.systemui.statusbar.policy.NetworkController.AccessPointController;
|
||||||
import com.android.systemui.toast.SystemUIToast;
|
import com.android.systemui.toast.SystemUIToast;
|
||||||
@@ -135,6 +136,8 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
private Animator mAnimator;
|
private Animator mAnimator;
|
||||||
@Mock
|
@Mock
|
||||||
private CarrierConfigTracker mCarrierConfigTracker;
|
private CarrierConfigTracker mCarrierConfigTracker;
|
||||||
|
@Mock
|
||||||
|
private LocationController mLocationController;
|
||||||
|
|
||||||
private TestableResources mTestableResources;
|
private TestableResources mTestableResources;
|
||||||
private MockInternetDialogController mInternetDialogController;
|
private MockInternetDialogController mInternetDialogController;
|
||||||
@@ -170,7 +173,8 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
mSubscriptionManager, mTelephonyManager, mWifiManager,
|
mSubscriptionManager, mTelephonyManager, mWifiManager,
|
||||||
mock(ConnectivityManager.class), mHandler, mExecutor, mBroadcastDispatcher,
|
mock(ConnectivityManager.class), mHandler, mExecutor, mBroadcastDispatcher,
|
||||||
mock(KeyguardUpdateMonitor.class), mGlobalSettings, mKeyguardStateController,
|
mock(KeyguardUpdateMonitor.class), mGlobalSettings, mKeyguardStateController,
|
||||||
mWindowManager, mToastFactory, mWorkerHandler, mCarrierConfigTracker);
|
mWindowManager, mToastFactory, mWorkerHandler, mCarrierConfigTracker,
|
||||||
|
mLocationController);
|
||||||
mSubscriptionManager.addOnSubscriptionsChangedListener(mExecutor,
|
mSubscriptionManager.addOnSubscriptionsChangedListener(mExecutor,
|
||||||
mInternetDialogController.mOnSubscriptionsChangedListener);
|
mInternetDialogController.mOnSubscriptionsChangedListener);
|
||||||
mInternetDialogController.onStart(mInternetDialogCallback, true);
|
mInternetDialogController.onStart(mInternetDialogCallback, true);
|
||||||
@@ -602,6 +606,30 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
verify(mMergedCarrierEntry).setEnabled(false);
|
verify(mMergedCarrierEntry).setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void isWifiScanEnabled_locationOff_returnFalse() {
|
||||||
|
when(mLocationController.isLocationEnabled()).thenReturn(false);
|
||||||
|
when(mWifiManager.isScanAlwaysAvailable()).thenReturn(false);
|
||||||
|
|
||||||
|
assertThat(mInternetDialogController.isWifiScanEnabled()).isFalse();
|
||||||
|
|
||||||
|
when(mWifiManager.isScanAlwaysAvailable()).thenReturn(true);
|
||||||
|
|
||||||
|
assertThat(mInternetDialogController.isWifiScanEnabled()).isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void isWifiScanEnabled_locationOn_returnIsScanAlwaysAvailable() {
|
||||||
|
when(mLocationController.isLocationEnabled()).thenReturn(true);
|
||||||
|
when(mWifiManager.isScanAlwaysAvailable()).thenReturn(false);
|
||||||
|
|
||||||
|
assertThat(mInternetDialogController.isWifiScanEnabled()).isFalse();
|
||||||
|
|
||||||
|
when(mWifiManager.isScanAlwaysAvailable()).thenReturn(true);
|
||||||
|
|
||||||
|
assertThat(mInternetDialogController.isWifiScanEnabled()).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
private String getResourcesString(String name) {
|
private String getResourcesString(String name) {
|
||||||
return mContext.getResources().getString(getResourcesId(name));
|
return mContext.getResources().getString(getResourcesId(name));
|
||||||
}
|
}
|
||||||
@@ -625,12 +653,13 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
|||||||
KeyguardUpdateMonitor keyguardUpdateMonitor, GlobalSettings globalSettings,
|
KeyguardUpdateMonitor keyguardUpdateMonitor, GlobalSettings globalSettings,
|
||||||
KeyguardStateController keyguardStateController, WindowManager windowManager,
|
KeyguardStateController keyguardStateController, WindowManager windowManager,
|
||||||
ToastFactory toastFactory, Handler workerHandler,
|
ToastFactory toastFactory, Handler workerHandler,
|
||||||
CarrierConfigTracker carrierConfigTracker) {
|
CarrierConfigTracker carrierConfigTracker,
|
||||||
|
LocationController locationController) {
|
||||||
super(context, uiEventLogger, starter, accessPointController, subscriptionManager,
|
super(context, uiEventLogger, starter, accessPointController, subscriptionManager,
|
||||||
telephonyManager, wifiManager, connectivityManager, handler, mainExecutor,
|
telephonyManager, wifiManager, connectivityManager, handler, mainExecutor,
|
||||||
broadcastDispatcher, keyguardUpdateMonitor, globalSettings,
|
broadcastDispatcher, keyguardUpdateMonitor, globalSettings,
|
||||||
keyguardStateController, windowManager, toastFactory, workerHandler,
|
keyguardStateController, windowManager, toastFactory, workerHandler,
|
||||||
carrierConfigTracker);
|
carrierConfigTracker, locationController);
|
||||||
mGlobalSettings = globalSettings;
|
mGlobalSettings = globalSettings;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -282,7 +282,7 @@ public class InternetDialogTest extends SysuiTestCase {
|
|||||||
@Test
|
@Test
|
||||||
public void updateDialog_wifiOffAndWifiScanOff_hideWifiScanNotify() {
|
public void updateDialog_wifiOffAndWifiScanOff_hideWifiScanNotify() {
|
||||||
when(mWifiManager.isWifiEnabled()).thenReturn(false);
|
when(mWifiManager.isWifiEnabled()).thenReturn(false);
|
||||||
when(mWifiManager.isScanAlwaysAvailable()).thenReturn(false);
|
when(mInternetDialogController.isWifiScanEnabled()).thenReturn(false);
|
||||||
|
|
||||||
mInternetDialog.updateDialog(false);
|
mInternetDialog.updateDialog(false);
|
||||||
|
|
||||||
@@ -292,7 +292,7 @@ public class InternetDialogTest extends SysuiTestCase {
|
|||||||
@Test
|
@Test
|
||||||
public void updateDialog_wifiOffAndWifiScanOnAndDeviceLocked_hideWifiScanNotify() {
|
public void updateDialog_wifiOffAndWifiScanOnAndDeviceLocked_hideWifiScanNotify() {
|
||||||
when(mWifiManager.isWifiEnabled()).thenReturn(false);
|
when(mWifiManager.isWifiEnabled()).thenReturn(false);
|
||||||
when(mWifiManager.isScanAlwaysAvailable()).thenReturn(true);
|
when(mInternetDialogController.isWifiScanEnabled()).thenReturn(true);
|
||||||
when(mInternetDialogController.isDeviceLocked()).thenReturn(true);
|
when(mInternetDialogController.isDeviceLocked()).thenReturn(true);
|
||||||
|
|
||||||
mInternetDialog.updateDialog(false);
|
mInternetDialog.updateDialog(false);
|
||||||
@@ -303,7 +303,7 @@ public class InternetDialogTest extends SysuiTestCase {
|
|||||||
@Test
|
@Test
|
||||||
public void updateDialog_wifiOffAndWifiScanOnAndDeviceUnlocked_showWifiScanNotify() {
|
public void updateDialog_wifiOffAndWifiScanOnAndDeviceUnlocked_showWifiScanNotify() {
|
||||||
when(mWifiManager.isWifiEnabled()).thenReturn(false);
|
when(mWifiManager.isWifiEnabled()).thenReturn(false);
|
||||||
when(mWifiManager.isScanAlwaysAvailable()).thenReturn(true);
|
when(mInternetDialogController.isWifiScanEnabled()).thenReturn(true);
|
||||||
when(mInternetDialogController.isDeviceLocked()).thenReturn(false);
|
when(mInternetDialogController.isDeviceLocked()).thenReturn(false);
|
||||||
|
|
||||||
mInternetDialog.updateDialog(false);
|
mInternetDialog.updateDialog(false);
|
||||||
|
|||||||
Reference in New Issue
Block a user