diff --git a/packages/SystemUI/res/drawable/ic_blank.xml b/packages/SystemUI/res/drawable/ic_blank.xml new file mode 100644 index 0000000000000..b94088f65d27b --- /dev/null +++ b/packages/SystemUI/res/drawable/ic_blank.xml @@ -0,0 +1,22 @@ + + + + diff --git a/packages/SystemUI/res/drawable/ic_qs_sim_card.xml b/packages/SystemUI/res/drawable/ic_qs_sim_card.xml new file mode 100644 index 0000000000000..6eda929b54d3d --- /dev/null +++ b/packages/SystemUI/res/drawable/ic_qs_sim_card.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + diff --git a/packages/SystemUI/src/com/android/systemui/qs/carrier/QSCarrierGroupController.java b/packages/SystemUI/src/com/android/systemui/qs/carrier/QSCarrierGroupController.java index 5afe1c87121da..c49e0547e4333 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/carrier/QSCarrierGroupController.java +++ b/packages/SystemUI/src/com/android/systemui/qs/carrier/QSCarrierGroupController.java @@ -43,6 +43,7 @@ import com.android.systemui.dagger.qualifiers.Main; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.statusbar.policy.NetworkController; import com.android.systemui.statusbar.policy.NetworkController.MobileDataIndicators; +import com.android.systemui.util.CarrierConfigTracker; import java.util.function.Consumer; @@ -71,6 +72,7 @@ public class QSCarrierGroupController { private int[] mLastSignalLevel = new int[SIM_SLOTS]; private String[] mLastSignalLevelDescription = new String[SIM_SLOTS]; private final boolean mProviderModel; + private final CarrierConfigTracker mCarrierConfigTracker; private final NetworkController.SignalCallback mSignalCallback = new NetworkController.SignalCallback() { @@ -112,6 +114,10 @@ public class QSCarrierGroupController { Log.e(TAG, "Invalid SIM slot index for subscription: " + subId); return; } + + boolean displayCallStrengthIcon = + mCarrierConfigTracker.getCallStrengthConfig(subId); + if (statusIcon.icon == R.drawable.ic_qs_no_calling_sms) { if (statusIcon.visible) { mInfos[slotIndex] = new CellSignalState(true, @@ -119,9 +125,14 @@ public class QSCarrierGroupController { } else { // Whenever the no Calling & SMS state is cleared, switched to the last // known call strength icon. - mInfos[slotIndex] = new CellSignalState( - true, mLastSignalLevel[slotIndex], - mLastSignalLevelDescription[slotIndex], "", false); + if (displayCallStrengthIcon) { + mInfos[slotIndex] = new CellSignalState( + true, mLastSignalLevel[slotIndex], + mLastSignalLevelDescription[slotIndex], "", false); + } else { + mInfos[slotIndex] = new CellSignalState( + true, R.drawable.ic_qs_sim_card, "", "", false); + } } mMainHandler.obtainMessage(H.MSG_UPDATE_STATE).sendToTarget(); } else { @@ -131,8 +142,13 @@ public class QSCarrierGroupController { // shown. if (mInfos[slotIndex].mobileSignalIconId != R.drawable.ic_qs_no_calling_sms) { - mInfos[slotIndex] = new CellSignalState(true, statusIcon.icon, - statusIcon.contentDescription, "", false); + if (displayCallStrengthIcon) { + mInfos[slotIndex] = new CellSignalState(true, statusIcon.icon, + statusIcon.contentDescription, "", false); + } else { + mInfos[slotIndex] = new CellSignalState( + true, R.drawable.ic_qs_sim_card, "", "", false); + } mMainHandler.obtainMessage(H.MSG_UPDATE_STATE).sendToTarget(); } } @@ -165,7 +181,8 @@ public class QSCarrierGroupController { private QSCarrierGroupController(QSCarrierGroup view, ActivityStarter activityStarter, @Background Handler bgHandler, @Main Looper mainLooper, NetworkController networkController, - CarrierTextManager.Builder carrierTextManagerBuilder, Context context) { + CarrierTextManager.Builder carrierTextManagerBuilder, Context context, + CarrierConfigTracker carrierConfigTracker) { if (FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_PROVIDER_MODEL)) { mProviderModel = true; } else { @@ -178,7 +195,7 @@ public class QSCarrierGroupController { .setShowAirplaneMode(false) .setShowMissingSim(false) .build(); - + mCarrierConfigTracker = carrierConfigTracker; View.OnClickListener onClickListener = v -> { if (!v.isVisibleToUser()) { return; @@ -228,6 +245,17 @@ public class QSCarrierGroupController { return SubscriptionManager.getSlotIndex(subscriptionId); } + private boolean isSingleCarrier() { + int carrierCount = 0; + for (int i = 0; i < SIM_SLOTS; i++) { + + if (mInfos[i].visible) { + carrierCount++; + } + } + return carrierCount == 1; + } + public void setListening(boolean listening) { if (listening == mListening) { return; @@ -257,6 +285,15 @@ public class QSCarrierGroupController { return; } + if (isSingleCarrier()) { + for (int i = 0; i < SIM_SLOTS; i++) { + if (mInfos[i].visible + && mInfos[i].mobileSignalIconId == R.drawable.ic_qs_sim_card) { + mInfos[i] = new CellSignalState(true, R.drawable.ic_blank, "", "", false); + } + } + } + for (int i = 0; i < SIM_SLOTS; i++) { mCarrierGroups[i].updateState(mInfos[i]); } @@ -363,17 +400,20 @@ public class QSCarrierGroupController { private final NetworkController mNetworkController; private final CarrierTextManager.Builder mCarrierTextControllerBuilder; private final Context mContext; + private final CarrierConfigTracker mCarrierConfigTracker; @Inject public Builder(ActivityStarter activityStarter, @Background Handler handler, @Main Looper looper, NetworkController networkController, - CarrierTextManager.Builder carrierTextControllerBuilder, Context context) { + CarrierTextManager.Builder carrierTextControllerBuilder, Context context, + CarrierConfigTracker carrierConfigTracker) { mActivityStarter = activityStarter; mHandler = handler; mLooper = looper; mNetworkController = networkController; mCarrierTextControllerBuilder = carrierTextControllerBuilder; mContext = context; + mCarrierConfigTracker = carrierConfigTracker; } public Builder setQSCarrierGroup(QSCarrierGroup view) { @@ -383,7 +423,8 @@ public class QSCarrierGroupController { public QSCarrierGroupController build() { return new QSCarrierGroupController(mView, mActivityStarter, mHandler, mLooper, - mNetworkController, mCarrierTextControllerBuilder, mContext); + mNetworkController, mCarrierTextControllerBuilder, mContext, + mCarrierConfigTracker); } } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java index bd17d00063d7d..cae7e354465b8 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -393,7 +393,6 @@ public class StatusBar extends SystemUI implements DemoMode, private final Object mQueueLock = new Object(); - private final StatusBarIconController mIconController; private final PulseExpansionHandler mPulseExpansionHandler; private final NotificationWakeUpCoordinator mWakeUpCoordinator; private final KeyguardBypassController mKeyguardBypassController; @@ -720,7 +719,7 @@ public class StatusBar extends SystemUI implements DemoMode, LightBarController lightBarController, AutoHideController autoHideController, KeyguardUpdateMonitor keyguardUpdateMonitor, - StatusBarIconController statusBarIconController, + StatusBarSignalPolicy signalPolicy, PulseExpansionHandler pulseExpansionHandler, NotificationWakeUpCoordinator notificationWakeUpCoordinator, KeyguardBypassController keyguardBypassController, @@ -806,7 +805,7 @@ public class StatusBar extends SystemUI implements DemoMode, mLightBarController = lightBarController; mAutoHideController = autoHideController; mKeyguardUpdateMonitor = keyguardUpdateMonitor; - mIconController = statusBarIconController; + mSignalPolicy = signalPolicy; mPulseExpansionHandler = pulseExpansionHandler; mWakeUpCoordinator = notificationWakeUpCoordinator; mKeyguardBypassController = keyguardBypassController; @@ -1015,7 +1014,6 @@ public class StatusBar extends SystemUI implements DemoMode, // Lastly, call to the icon policy to install/update all the icons. mIconPolicy.init(); - mSignalPolicy = new StatusBarSignalPolicy(mContext, mIconController); mKeyguardStateController.addCallback(this); startKeyguard(); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarSignalPolicy.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarSignalPolicy.java index 3445826eefbe8..142cf21c4f29c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarSignalPolicy.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarSignalPolicy.java @@ -25,6 +25,7 @@ import android.util.Log; import com.android.settingslib.mobile.TelephonyIcons; import com.android.systemui.Dependency; import com.android.systemui.R; +import com.android.systemui.dagger.SysUISingleton; import com.android.systemui.statusbar.policy.NetworkController; import com.android.systemui.statusbar.policy.NetworkController.IconState; import com.android.systemui.statusbar.policy.NetworkController.MobileDataIndicators; @@ -33,12 +34,16 @@ import com.android.systemui.statusbar.policy.NetworkControllerImpl; import com.android.systemui.statusbar.policy.SecurityController; import com.android.systemui.tuner.TunerService; import com.android.systemui.tuner.TunerService.Tunable; +import com.android.systemui.util.CarrierConfigTracker; import java.util.ArrayList; import java.util.List; import java.util.Objects; +import javax.inject.Inject; +/** Controls the signal policies for icons shown in the StatusBar. **/ +@SysUISingleton public class StatusBarSignalPolicy implements NetworkControllerImpl.SignalCallback, SecurityController.SecurityControllerCallback, Tunable { private static final String TAG = "StatusBarSignalPolicy"; @@ -57,6 +62,7 @@ public class StatusBarSignalPolicy implements NetworkControllerImpl.SignalCallba private final NetworkController mNetworkController; private final SecurityController mSecurityController; private final Handler mHandler = Handler.getMain(); + private final CarrierConfigTracker mCarrierConfigTracker; private boolean mHideAirplane; private boolean mHideMobile; @@ -75,7 +81,9 @@ public class StatusBarSignalPolicy implements NetworkControllerImpl.SignalCallba new ArrayList(); private WifiIconState mWifiIconState = new WifiIconState(); - public StatusBarSignalPolicy(Context context, StatusBarIconController iconController) { + @Inject + public StatusBarSignalPolicy(Context context, StatusBarIconController iconController, + CarrierConfigTracker carrierConfigTracker) { mContext = context; mSlotAirplane = mContext.getString(com.android.internal.R.string.status_bar_airplane); @@ -95,6 +103,7 @@ public class StatusBarSignalPolicy implements NetworkControllerImpl.SignalCallba Dependency.get(TunerService.class).addTunable(this, StatusBarIconController.ICON_HIDE_LIST); mNetworkController.addCallback(this); mSecurityController.addCallback(this); + mCarrierConfigTracker = carrierConfigTracker; } public void destroy() { @@ -215,8 +224,12 @@ public class StatusBarSignalPolicy implements NetworkControllerImpl.SignalCallba state.callStrengthResId = statusIcon.icon; state.callStrengthDescription = statusIcon.contentDescription; } - mIconController.setCallStrengthIcons(mSlotCallStrength, - CallIndicatorIconState.copyStates(mCallIndicatorStates)); + if (mCarrierConfigTracker.getCallStrengthConfig(subId)) { + mIconController.setCallStrengthIcons(mSlotCallStrength, + CallIndicatorIconState.copyStates(mCallIndicatorStates)); + } else { + mIconController.removeIcon(mSlotCallStrength, subId); + } mIconController.setNoCallingIcons(mSlotNoCalling, CallIndicatorIconState.copyStates(mCallIndicatorStates)); } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.java index ae11a74748cd3..d0d2cb288aa5c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/dagger/StatusBarPhoneModule.java @@ -88,10 +88,10 @@ import com.android.systemui.statusbar.phone.PhoneStatusBarPolicy; import com.android.systemui.statusbar.phone.ScrimController; import com.android.systemui.statusbar.phone.ShadeController; import com.android.systemui.statusbar.phone.StatusBar; -import com.android.systemui.statusbar.phone.StatusBarIconController; import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager; import com.android.systemui.statusbar.phone.StatusBarLocationPublisher; import com.android.systemui.statusbar.phone.StatusBarNotificationActivityStarter; +import com.android.systemui.statusbar.phone.StatusBarSignalPolicy; import com.android.systemui.statusbar.phone.StatusBarTouchableRegionManager; import com.android.systemui.statusbar.phone.ongoingcall.OngoingCallController; import com.android.systemui.statusbar.policy.BatteryController; @@ -134,7 +134,7 @@ public interface StatusBarPhoneModule { LightBarController lightBarController, AutoHideController autoHideController, KeyguardUpdateMonitor keyguardUpdateMonitor, - StatusBarIconController statusBarIconController, + StatusBarSignalPolicy signalPolicy, PulseExpansionHandler pulseExpansionHandler, NotificationWakeUpCoordinator notificationWakeUpCoordinator, KeyguardBypassController keyguardBypassController, @@ -221,7 +221,7 @@ public interface StatusBarPhoneModule { lightBarController, autoHideController, keyguardUpdateMonitor, - statusBarIconController, + signalPolicy, pulseExpansionHandler, notificationWakeUpCoordinator, keyguardBypassController, diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java index 044f52fd689e8..ce080752b5ccb 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java @@ -61,6 +61,7 @@ import com.android.systemui.R; import com.android.systemui.statusbar.policy.NetworkController.IconState; import com.android.systemui.statusbar.policy.NetworkController.MobileDataIndicators; import com.android.systemui.statusbar.policy.NetworkController.SignalCallback; +import com.android.systemui.util.CarrierConfigTracker; import java.io.PrintWriter; import java.text.SimpleDateFormat; @@ -78,6 +79,7 @@ public class MobileSignalController extends SignalController mCallStrengthConfigs = new SparseArray<>(); + private final SparseArray mNoCallingConfigs = new SparseArray<>(); + private final CarrierConfigManager mCarrierConfigManager; + private final boolean mDefaultCallStrengthConfig; + private final boolean mDefaultNoCallingConfig; + + @Inject + public CarrierConfigTracker(Context context) { + mCarrierConfigManager = context.getSystemService(CarrierConfigManager.class); + context.registerReceiver( + this, new IntentFilter(CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED)); + mDefaultCallStrengthConfig = + CarrierConfigManager.getDefaultConfig().getBoolean( + CarrierConfigManager.KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL); + mDefaultNoCallingConfig = + CarrierConfigManager.getDefaultConfig().getBoolean( + CarrierConfigManager.KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL); + } + + @Override + public void onReceive(Context context, Intent intent) { + if (intent.getAction() == CarrierConfigManager.ACTION_CARRIER_CONFIG_CHANGED) { + int subId = intent.getIntExtra( + CarrierConfigManager.EXTRA_SUBSCRIPTION_INDEX, + SubscriptionManager.INVALID_SUBSCRIPTION_ID); + if (!SubscriptionManager.isValidSubscriptionId(subId)) { + return; + } + PersistableBundle b = mCarrierConfigManager.getConfigForSubId(subId); + if (b != null) { + boolean hideNoCallingConfig = b.getBoolean( + CarrierConfigManager.KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL); + boolean displayCallStrengthIcon = b.getBoolean( + CarrierConfigManager.KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL); + mCallStrengthConfigs.put(subId, displayCallStrengthIcon); + mNoCallingConfigs.put(subId, hideNoCallingConfig); + } + } + } + + /** + * Returns the KEY_DISPLAY_CALL_STRENGTH_INDICATOR_BOOL value for the given subId. + */ + public boolean getCallStrengthConfig(int subId) { + if (mCallStrengthConfigs.indexOfKey(subId) >= 0) { + return mCallStrengthConfigs.get(subId); + } + return mDefaultCallStrengthConfig; + } + + /** + * Returns the KEY_USE_IP_FOR_CALLING_INDICATOR_BOOL value for the given subId. + */ + public boolean getNoCallingConfig(int subId) { + if (mNoCallingConfigs.indexOfKey(subId) >= 0) { + return mNoCallingConfigs.get(subId); + } + return mDefaultNoCallingConfig; + } +} diff --git a/packages/SystemUI/tests/src/com/android/systemui/qs/carrier/QSCarrierGroupControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/qs/carrier/QSCarrierGroupControllerTest.java index 59a5f03da5302..876acc12f7db3 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/qs/carrier/QSCarrierGroupControllerTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/qs/carrier/QSCarrierGroupControllerTest.java @@ -37,6 +37,7 @@ import com.android.keyguard.CarrierTextManager; import com.android.systemui.plugins.ActivityStarter; import com.android.systemui.statusbar.policy.NetworkController; import com.android.systemui.statusbar.policy.NetworkController.MobileDataIndicators; +import com.android.systemui.util.CarrierConfigTracker; import com.android.systemui.utils.leaks.LeakCheckedTest; import com.android.systemui.utils.os.FakeHandler; @@ -66,6 +67,8 @@ public class QSCarrierGroupControllerTest extends LeakCheckedTest { private CarrierTextManager.Builder mCarrierTextControllerBuilder; @Mock private CarrierTextManager mCarrierTextManager; + @Mock + private CarrierConfigTracker mCarrierConfigTracker; private TestableLooper mTestableLooper; @Before @@ -99,7 +102,7 @@ public class QSCarrierGroupControllerTest extends LeakCheckedTest { mQSCarrierGroupController = new QSCarrierGroupController.Builder( mActivityStarter, handler, TestableLooper.get(this).getLooper(), - mNetworkController, mCarrierTextControllerBuilder, mContext) + mNetworkController, mCarrierTextControllerBuilder, mContext, mCarrierConfigTracker) .setQSCarrierGroup(mQSCarrierGroup) .build(); diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java index b2487e8e2444d..b3d52b80c815b 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/StatusBarTest.java @@ -178,7 +178,7 @@ public class StatusBarTest extends SysuiTestCase { @Mock private NotificationsController mNotificationsController; @Mock private LightBarController mLightBarController; - @Mock private StatusBarIconController mStatusBarIconController; + @Mock private StatusBarSignalPolicy mStatusBarSignalPolicy; @Mock private StatusBarKeyguardViewManager mStatusBarKeyguardViewManager; @Mock private KeyguardStateController mKeyguardStateController; @Mock private KeyguardIndicationController mKeyguardIndicationController; @@ -356,7 +356,7 @@ public class StatusBarTest extends SysuiTestCase { mLightBarController, mAutoHideController, mKeyguardUpdateMonitor, - mStatusBarIconController, + mStatusBarSignalPolicy, mPulseExpansionHandler, mNotificationWakeUpCoordinator, mKeyguardBypassController, diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java index f33c9e88c3472..abc66dbca2a2f 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java @@ -76,6 +76,7 @@ import com.android.systemui.statusbar.policy.NetworkController.IconState; import com.android.systemui.statusbar.policy.NetworkController.MobileDataIndicators; import com.android.systemui.statusbar.policy.NetworkController.SignalCallback; import com.android.systemui.telephony.TelephonyListenerManager; +import com.android.systemui.util.CarrierConfigTracker; import com.android.systemui.util.concurrency.FakeExecutor; import com.android.systemui.util.time.FakeSystemClock; @@ -124,6 +125,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase { protected DeviceProvisionedListener mUserCallback; protected Instrumentation mInstrumentation; protected DemoModeController mDemoModeController; + protected CarrierConfigTracker mCarrierConfigTracker; protected FakeExecutor mFakeExecutor = new FakeExecutor(new FakeSystemClock()); protected int mSubId; @@ -174,6 +176,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase { mMockBd = mock(BroadcastDispatcher.class); mMockNsm = mock(NetworkScoreManager.class); mMockSubDefaults = mock(SubscriptionDefaults.class); + mCarrierConfigTracker = mock(CarrierConfigTracker.class); mNetCapabilities = new NetworkCapabilities(); when(mMockTm.isDataCapable()).thenReturn(true); when(mMockTm.createForSubscriptionId(anyInt())).thenReturn(mMockTm); @@ -231,7 +234,8 @@ public class NetworkControllerBaseTest extends SysuiTestCase { mMockSubDefaults, mMockProvisionController, mMockBd, - mDemoModeController); + mDemoModeController, + mCarrierConfigTracker); setupNetworkController(); // Trigger blank callbacks to always get the current state (some tests don't trigger @@ -298,7 +302,8 @@ public class NetworkControllerBaseTest extends SysuiTestCase { mCallbackHandler, mock(AccessPointControllerImpl.class), mock(DataUsageController.class), mMockSubDefaults, - mock(DeviceProvisionedController.class), mMockBd, mDemoModeController); + mock(DeviceProvisionedController.class), mMockBd, mDemoModeController, + mCarrierConfigTracker); setupNetworkController(); diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerDataTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerDataTest.java index 6219fafc98db4..09554e717d3d9 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerDataTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerDataTest.java @@ -21,6 +21,7 @@ import android.testing.TestableLooper.RunWithLooper; import com.android.settingslib.mobile.TelephonyIcons; import com.android.settingslib.net.DataUsageController; +import com.android.systemui.util.CarrierConfigTracker; import org.junit.Test; import org.junit.runner.RunWith; @@ -111,7 +112,8 @@ public class NetworkControllerDataTest extends NetworkControllerBaseTest { mMockNsm, mMockSm, mConfig, Looper.getMainLooper(), mFakeExecutor, mCallbackHandler, mock(AccessPointControllerImpl.class), mock(DataUsageController.class), mMockSubDefaults, - mock(DeviceProvisionedController.class), mMockBd, mDemoModeController); + mock(DeviceProvisionedController.class), mMockBd, mDemoModeController, + mock(CarrierConfigTracker.class)); setupNetworkController(); setupDefaultSignal(); diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerSignalTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerSignalTest.java index 8d3e403f11897..1e7801d63f750 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerSignalTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerSignalTest.java @@ -41,6 +41,7 @@ import com.android.settingslib.graph.SignalDrawable; import com.android.settingslib.mobile.TelephonyIcons; import com.android.settingslib.net.DataUsageController; import com.android.systemui.R; +import com.android.systemui.util.CarrierConfigTracker; import org.junit.Test; import org.junit.runner.RunWith; @@ -66,7 +67,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest { Looper.getMainLooper(), mFakeExecutor, mCallbackHandler, mock(AccessPointControllerImpl.class), mock(DataUsageController.class), mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd, - mDemoModeController); + mDemoModeController, mock(CarrierConfigTracker.class)); setupNetworkController(); verifyLastMobileDataIndicators(false, -1, 0); @@ -86,7 +87,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest { Looper.getMainLooper(), mFakeExecutor, mCallbackHandler, mock(AccessPointControllerImpl.class), mock(DataUsageController.class), mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd, - mDemoModeController); + mDemoModeController, mock(CarrierConfigTracker.class)); mNetworkController.registerListeners(); // Wait for the main looper to execute the previous command @@ -154,7 +155,7 @@ public class NetworkControllerSignalTest extends NetworkControllerBaseTest { Looper.getMainLooper(), mFakeExecutor, mCallbackHandler, mock(AccessPointControllerImpl.class), mock(DataUsageController.class), mMockSubDefaults, mock(DeviceProvisionedController.class), mMockBd, - mDemoModeController); + mDemoModeController, mock(CarrierConfigTracker.class)); setupNetworkController(); // No Subscriptions. diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerWifiTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerWifiTest.java index bfb98deda4529..687ca601bd6e2 100644 --- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerWifiTest.java +++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerWifiTest.java @@ -269,9 +269,9 @@ public class NetworkControllerWifiTest extends NetworkControllerBaseTest { } // Set the ImsType to be IMS_TYPE_WWAN setImsType(1); + setupDefaultSignal(); for (int testStrength = 0; testStrength < CellSignalStrength.getNumSignalStrengthLevels(); testStrength++) { - setupDefaultSignal(); setLevel(testStrength); verifyLastCallStrength(TelephonyIcons.MOBILE_CALL_STRENGTH_ICONS[testStrength]); }