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
This commit is contained in:
Sanket Padawe
2016-04-07 09:43:03 -07:00
parent e6924ce8ca
commit e0e651f2e0

View File

@@ -164,10 +164,11 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
if (sir != null) { if (sir != null) {
simPref.setSummary(sir.getDisplayName()); simPref.setSummary(sir.getDisplayName());
simPref.setEnabled(mSelectableSubInfos.size() > 1);
} else if (sir == null) { } else if (sir == null) {
simPref.setSummary(R.string.sim_selection_required_pref); simPref.setSummary(R.string.sim_selection_required_pref);
simPref.setEnabled(mSelectableSubInfos.size() >= 1);
} }
simPref.setEnabled(mSelectableSubInfos.size() >= 1);
} }
private void updateCellularDataValues() { private void updateCellularDataValues() {
@@ -176,17 +177,18 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
simPref.setTitle(R.string.cellular_data_title); simPref.setTitle(R.string.cellular_data_title);
if (DBG) log("[updateCellularDataValues] mSubInfoList=" + mSubInfoList); 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(); boolean callStateIdle = isCallStateIdle();
final boolean ecbMode = SystemProperties.getBoolean( final boolean ecbMode = SystemProperties.getBoolean(
TelephonyProperties.PROPERTY_INECM_MODE, false); TelephonyProperties.PROPERTY_INECM_MODE, false);
// Enable data preference in msim mode and call state idle if (sir != null) {
simPref.setEnabled((mSelectableSubInfos.size() >= 1) && callStateIdle && !ecbMode); 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() { private void updateCallValues() {