From d0682d036387c7f66e0a199b12e5734f173afc62 Mon Sep 17 00:00:00 2001 From: Jason Monk Date: Thu, 28 Jan 2016 12:35:31 -0500 Subject: [PATCH] Clean up CellDataPreference dialog problems Bug: 26830672 Change-Id: I189f8b2120143ca9829feebd24cf2ee93a33f05b --- src/com/android/settings/CustomDialogPreference.java | 3 ++- .../android/settings/datausage/CellDataPreference.java | 9 +++++---- src/com/android/settings/datausage/DataUsageSummary.java | 1 + 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/com/android/settings/CustomDialogPreference.java b/src/com/android/settings/CustomDialogPreference.java index edd5416fad0..383163f4920 100644 --- a/src/com/android/settings/CustomDialogPreference.java +++ b/src/com/android/settings/CustomDialogPreference.java @@ -29,7 +29,8 @@ public class CustomDialogPreference extends DialogPreference { private CustomPreferenceDialogFragment mFragment; - public CustomDialogPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { + public CustomDialogPreference(Context context, AttributeSet attrs, int defStyleAttr, + int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); } diff --git a/src/com/android/settings/datausage/CellDataPreference.java b/src/com/android/settings/datausage/CellDataPreference.java index fa333f1a1c3..d64bef4f09d 100644 --- a/src/com/android/settings/datausage/CellDataPreference.java +++ b/src/com/android/settings/datausage/CellDataPreference.java @@ -48,7 +48,7 @@ public class CellDataPreference extends CustomDialogPreference implements Templa private static final String TAG = "CellDataPreference"; - public int mSubId; + public int mSubId = SubscriptionManager.INVALID_SUBSCRIPTION_ID; public boolean mChecked; public boolean mMultiSimDialog; private TelephonyManager mTelephonyManager; @@ -65,8 +65,10 @@ public class CellDataPreference extends CustomDialogPreference implements Templa mTelephonyManager = TelephonyManager.from(getContext()); mChecked = state.mChecked; mMultiSimDialog = state.mMultiSimDialog; - mSubId = state.mSubId; - setKey(getKey() + mSubId); + if (mSubId == SubscriptionManager.INVALID_SUBSCRIPTION_ID) { + mSubId = state.mSubId; + setKey(getKey() + mSubId); + } notifyChanged(); } @@ -110,7 +112,6 @@ public class CellDataPreference extends CustomDialogPreference implements Templa @Override protected void performClick(View view) { - super.performClick(view); MetricsLogger.action(getContext(), MetricsEvent.ACTION_CELL_DATA_TOGGLE, !mChecked); if (mChecked) { // disabling data; show confirmation dialog which eventually diff --git a/src/com/android/settings/datausage/DataUsageSummary.java b/src/com/android/settings/datausage/DataUsageSummary.java index e1936ed3226..31956412cf6 100644 --- a/src/com/android/settings/datausage/DataUsageSummary.java +++ b/src/com/android/settings/datausage/DataUsageSummary.java @@ -138,6 +138,7 @@ public class DataUsageSummary extends DataUsageBase implements Indexable { TemplatePreferenceCategory category = (TemplatePreferenceCategory) inflatePreferences(R.xml.data_usage_cellular); category.setTemplate(getNetworkTemplate(subId), subId, services); + category.pushTemplates(services); } private void addWifiSection() {