Fix multi-sim popup issue in data usage. am: 8591f26fa3
am: d8fc77122b
Change-Id: Idbe5e19e8ce5660e4a056b28917fccca5477cc9e
diff --git a/src/com/android/settings/datausage/CellDataPreference.java b/src/com/android/settings/datausage/CellDataPreference.java
index b6daa4a..510d8a1 100644
--- a/src/com/android/settings/datausage/CellDataPreference.java
+++ b/src/com/android/settings/datausage/CellDataPreference.java
@@ -111,11 +111,10 @@
@Override
protected void performClick(View view) {
MetricsLogger.action(getContext(), 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()) ||
@@ -136,6 +135,12 @@
// 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);