From e0e651f2e0188df3e52a7398a9fe9c1540d99b2c Mon Sep 17 00:00:00 2001 From: Sanket Padawe Date: Thu, 7 Apr 2016 09:43:03 -0700 Subject: [PATCH] Fix UI issue in Sim Settings screen. + Preference screen for Sim card selection should be enabled when 1)sim count > 1. 2) no default is set for Sms & Data & sim count >= 1 Bug: 27637607 Change-Id: Idb7207316a7bf9aab119ec6568038990623ba514 --- src/com/android/settings/sim/SimSettings.java | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/com/android/settings/sim/SimSettings.java b/src/com/android/settings/sim/SimSettings.java index e783923ba83..ece39136b56 100644 --- a/src/com/android/settings/sim/SimSettings.java +++ b/src/com/android/settings/sim/SimSettings.java @@ -164,10 +164,11 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable if (sir != null) { simPref.setSummary(sir.getDisplayName()); + simPref.setEnabled(mSelectableSubInfos.size() > 1); } else if (sir == null) { simPref.setSummary(R.string.sim_selection_required_pref); + simPref.setEnabled(mSelectableSubInfos.size() >= 1); } - simPref.setEnabled(mSelectableSubInfos.size() >= 1); } private void updateCellularDataValues() { @@ -176,17 +177,18 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable simPref.setTitle(R.string.cellular_data_title); if (DBG) log("[updateCellularDataValues] mSubInfoList=" + mSubInfoList); - if (sir != null) { - simPref.setSummary(sir.getDisplayName()); - } else if (sir == null) { - simPref.setSummary(R.string.sim_selection_required_pref); - } - boolean callStateIdle = isCallStateIdle(); final boolean ecbMode = SystemProperties.getBoolean( TelephonyProperties.PROPERTY_INECM_MODE, false); - // Enable data preference in msim mode and call state idle - simPref.setEnabled((mSelectableSubInfos.size() >= 1) && callStateIdle && !ecbMode); + if (sir != null) { + simPref.setSummary(sir.getDisplayName()); + // Enable data preference in msim mode and call state idle + simPref.setEnabled((mSelectableSubInfos.size() > 1) && callStateIdle && !ecbMode); + } else if (sir == null) { + simPref.setSummary(R.string.sim_selection_required_pref); + // Enable data preference in msim mode and call state idle + simPref.setEnabled((mSelectableSubInfos.size() >= 1) && callStateIdle && !ecbMode); + } } private void updateCallValues() {