diff --git a/src/com/android/settings/datausage/CellDataPreference.java b/src/com/android/settings/datausage/CellDataPreference.java index aa4001d8733..daf72f3eaf0 100644 --- a/src/com/android/settings/datausage/CellDataPreference.java +++ b/src/com/android/settings/datausage/CellDataPreference.java @@ -114,11 +114,10 @@ public class CellDataPreference extends CustomDialogPreference implements Templa final Context context = getContext(); FeatureFactory.getFactory(context).getMetricsFeatureProvider() .action(context, MetricsEvent.ACTION_CELL_DATA_TOGGLE, !mChecked); + final SubscriptionInfo currentSir = mSubscriptionManager.getActiveSubscriptionInfo( + mSubId); + final SubscriptionInfo nextSir = mSubscriptionManager.getDefaultDataSubscriptionInfo(); if (mChecked) { - final SubscriptionInfo currentSir = mSubscriptionManager.getActiveSubscriptionInfo( - mSubId); - final SubscriptionInfo nextSir = mSubscriptionManager.getDefaultDataSubscriptionInfo(); - // If the device is single SIM or is enabling data on the active data SIM then forgo // the pop-up. if (!Utils.showSimCardTile(getContext()) || @@ -139,6 +138,12 @@ public class CellDataPreference extends CustomDialogPreference implements Templa // If we are showing the Sim Card tile then we are a Multi-Sim device. if (Utils.showSimCardTile(getContext())) { mMultiSimDialog = true; + if (nextSir != null && currentSir != null && + currentSir.getSubscriptionId() == nextSir.getSubscriptionId()) { + setMobileDataEnabled(true); + disableDataForOtherSubscriptions(mSubId); + return; + } super.performClick(view); } else { setMobileDataEnabled(true);