Merge "Remove 'x' policy for non-default DSDS SIM" into qt-qpr1-dev
am: ccb430008e
Change-Id: I900eb7024f7c909c9217248888e42da2be229253
This commit is contained in:
@@ -294,7 +294,8 @@ public class MobileSignalController extends SignalController<
|
||||
}
|
||||
boolean dataDisabled = mCurrentState.userSetup
|
||||
&& (mCurrentState.iconGroup == TelephonyIcons.DATA_DISABLED
|
||||
|| mCurrentState.iconGroup == TelephonyIcons.NOT_DEFAULT_DATA);
|
||||
|| (mCurrentState.iconGroup == TelephonyIcons.NOT_DEFAULT_DATA
|
||||
&& mCurrentState.defaultDataOff));
|
||||
boolean noInternet = mCurrentState.inetCondition == 0;
|
||||
boolean cutOut = dataDisabled || noInternet;
|
||||
return SignalDrawable.getState(level, getNumLevels(), cutOut);
|
||||
@@ -320,7 +321,7 @@ public class MobileSignalController extends SignalController<
|
||||
dataContentDescription = mContext.getString(R.string.data_connection_no_internet);
|
||||
}
|
||||
final boolean dataDisabled = (mCurrentState.iconGroup == TelephonyIcons.DATA_DISABLED
|
||||
|| mCurrentState.iconGroup == TelephonyIcons.NOT_DEFAULT_DATA)
|
||||
|| (mCurrentState.iconGroup == TelephonyIcons.NOT_DEFAULT_DATA))
|
||||
&& mCurrentState.userSetup;
|
||||
|
||||
// Show icon in QS when we are connected or data is disabled.
|
||||
@@ -484,6 +485,7 @@ public class MobileSignalController extends SignalController<
|
||||
Log.d(mTag, "updateTelephonySignalStrength: hasService=" +
|
||||
Utils.isInService(mServiceState) + " ss=" + mSignalStrength);
|
||||
}
|
||||
checkDefaultData();
|
||||
mCurrentState.connected = Utils.isInService(mServiceState)
|
||||
&& mSignalStrength != null;
|
||||
if (mCurrentState.connected) {
|
||||
@@ -541,6 +543,23 @@ public class MobileSignalController extends SignalController<
|
||||
notifyListenersIfNecessary();
|
||||
}
|
||||
|
||||
/**
|
||||
* If we are controlling the NOT_DEFAULT_DATA icon, check the status of the other one
|
||||
*/
|
||||
private void checkDefaultData() {
|
||||
if (mCurrentState.iconGroup != TelephonyIcons.NOT_DEFAULT_DATA) {
|
||||
mCurrentState.defaultDataOff = false;
|
||||
return;
|
||||
}
|
||||
|
||||
mCurrentState.defaultDataOff = mNetworkController.isDataControllerDisabled();
|
||||
}
|
||||
|
||||
void onMobileDataChanged() {
|
||||
checkDefaultData();
|
||||
notifyListenersIfNecessary();
|
||||
}
|
||||
|
||||
private MobileIconGroup getNr5GIconGroup() {
|
||||
if (mServiceState == null) return null;
|
||||
|
||||
@@ -617,7 +636,7 @@ public class MobileSignalController extends SignalController<
|
||||
return candidateIconGroup;
|
||||
}
|
||||
|
||||
private boolean isDataDisabled() {
|
||||
boolean isDataDisabled() {
|
||||
return !mPhone.isDataCapable();
|
||||
}
|
||||
|
||||
@@ -750,6 +769,7 @@ public class MobileSignalController extends SignalController<
|
||||
boolean isDefault;
|
||||
boolean userSetup;
|
||||
boolean roaming;
|
||||
boolean defaultDataOff; // Tracks the on/off state of the defaultDataSubscription
|
||||
|
||||
@Override
|
||||
public void copyFrom(State s) {
|
||||
@@ -765,6 +785,7 @@ public class MobileSignalController extends SignalController<
|
||||
carrierNetworkChangeMode = state.carrierNetworkChangeMode;
|
||||
userSetup = state.userSetup;
|
||||
roaming = state.roaming;
|
||||
defaultDataOff = state.defaultDataOff;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -781,7 +802,8 @@ public class MobileSignalController extends SignalController<
|
||||
builder.append("airplaneMode=").append(airplaneMode).append(',');
|
||||
builder.append("carrierNetworkChangeMode=").append(carrierNetworkChangeMode)
|
||||
.append(',');
|
||||
builder.append("userSetup=").append(userSetup);
|
||||
builder.append("userSetup=").append(userSetup).append(',');
|
||||
builder.append("defaultDataOff=").append(defaultDataOff);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -796,7 +818,8 @@ public class MobileSignalController extends SignalController<
|
||||
&& ((MobileState) o).carrierNetworkChangeMode == carrierNetworkChangeMode
|
||||
&& ((MobileState) o).userSetup == userSetup
|
||||
&& ((MobileState) o).isDefault == isDefault
|
||||
&& ((MobileState) o).roaming == roaming;
|
||||
&& ((MobileState) o).roaming == roaming
|
||||
&& ((MobileState) o).defaultDataOff == defaultDataOff;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -220,6 +220,7 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
||||
@Override
|
||||
public void onMobileDataEnabled(boolean enabled) {
|
||||
mCallbackHandler.setMobileDataEnabled(enabled);
|
||||
notifyControllersMobileDataChanged();
|
||||
}
|
||||
});
|
||||
mWifiSignalController = new WifiSignalController(mContext, mHasMobileDataFeature,
|
||||
@@ -385,6 +386,22 @@ public class NetworkControllerImpl extends BroadcastReceiver
|
||||
return mMobileSignalControllers.size();
|
||||
}
|
||||
|
||||
boolean isDataControllerDisabled() {
|
||||
MobileSignalController dataController = getDataController();
|
||||
if (dataController == null) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return dataController.isDataDisabled();
|
||||
}
|
||||
|
||||
private void notifyControllersMobileDataChanged() {
|
||||
for (int i = 0; i < mMobileSignalControllers.size(); i++) {
|
||||
MobileSignalController mobileSignalController = mMobileSignalControllers.valueAt(i);
|
||||
mobileSignalController.onMobileDataChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isEmergencyOnly() {
|
||||
if (mMobileSignalControllers.size() == 0) {
|
||||
// When there are no active subscriptions, determine emengency state from last
|
||||
|
||||
@@ -147,7 +147,7 @@ public class NetworkControllerDataTest extends NetworkControllerBaseTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testNoInternetIcon_withoutDefaultSub() {
|
||||
public void testNonDefaultSIM_showsFullSignal_connected() {
|
||||
setupNetworkController();
|
||||
when(mMockTm.isDataCapable()).thenReturn(false);
|
||||
setupDefaultSignal();
|
||||
@@ -158,11 +158,11 @@ public class NetworkControllerDataTest extends NetworkControllerBaseTest {
|
||||
// Verify that a SignalDrawable with a cut out is used to display data disabled.
|
||||
verifyLastMobileDataIndicators(true, DEFAULT_SIGNAL_STRENGTH, 0,
|
||||
true, DEFAULT_QS_SIGNAL_STRENGTH, 0, false,
|
||||
false, true, NOT_DEFAULT_DATA_STRING);
|
||||
false, false, NOT_DEFAULT_DATA_STRING);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDataDisabledIcon_withoutDefaultSub() {
|
||||
public void testNonDefaultSIM_showsFullSignal_disconnected() {
|
||||
setupNetworkController();
|
||||
when(mMockTm.isDataCapable()).thenReturn(false);
|
||||
setupDefaultSignal();
|
||||
@@ -173,7 +173,7 @@ public class NetworkControllerDataTest extends NetworkControllerBaseTest {
|
||||
// Verify that a SignalDrawable with a cut out is used to display data disabled.
|
||||
verifyLastMobileDataIndicators(true, DEFAULT_SIGNAL_STRENGTH, 0,
|
||||
true, DEFAULT_QS_SIGNAL_STRENGTH, 0, false,
|
||||
false, true, NOT_DEFAULT_DATA_STRING);
|
||||
false, false, NOT_DEFAULT_DATA_STRING);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user