diff --git a/res/values/strings.xml b/res/values/strings.xml index d104898c8a3..e00bc76b704 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -29,6 +29,8 @@ Unknown + + Tap to show info You are now %1$d step away from being a developer. diff --git a/res/xml/my_device_info.xml b/res/xml/my_device_info.xml index 9547318a86e..9165745f472 100644 --- a/res/xml/my_device_info.xml +++ b/res/xml/my_device_info.xml @@ -57,7 +57,6 @@ android:order="3" android:title="@string/status_number" android:summary="@string/summary_placeholder" - android:selectable="false" settings:controller="com.android.settings.deviceinfo.PhoneNumberPreferenceController" settings:enableCopying="true"/> diff --git a/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java b/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java index 99c572d527e..2ad9331a748 100644 --- a/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java +++ b/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java @@ -56,7 +56,24 @@ public class PhoneNumberPreferenceController extends BasePreferenceController { @Override public CharSequence getSummary() { - return getFirstPhoneNumber(); + return mContext.getString(R.string.device_info_protected_single_press); + } + + @Override + public boolean handlePreferenceTreeClick(Preference preference) { + String prefKey = preference.getKey(); + if (prefKey.startsWith(KEY_PHONE_NUMBER)) { + int simSlotNumber = 0; + if (!TextUtils.equals(prefKey, KEY_PHONE_NUMBER)) { + // Get multisim slot number from preference key. + // Multisim preference key is KEY_PHONE_NUMBER + simSlotNumber + simSlotNumber = Integer.parseInt( + prefKey.replaceAll("[^0-9]", "")); + } + final Preference simStatusPreference = mPreferenceList.get(simSlotNumber); + simStatusPreference.setSummary(getPhoneNumber(simSlotNumber)); + } + return super.handlePreferenceTreeClick(preference); } @Override @@ -73,7 +90,6 @@ public class PhoneNumberPreferenceController extends BasePreferenceController { final Preference multiSimPreference = createNewPreference(screen.getContext()); multiSimPreference.setOrder(phonePreferenceOrder + simSlotNumber); multiSimPreference.setKey(KEY_PHONE_NUMBER + simSlotNumber); - multiSimPreference.setSelectable(false); category.addPreference(multiSimPreference); mPreferenceList.add(multiSimPreference); } @@ -84,7 +100,7 @@ public class PhoneNumberPreferenceController extends BasePreferenceController { for (int simSlotNumber = 0; simSlotNumber < mPreferenceList.size(); simSlotNumber++) { final Preference simStatusPreference = mPreferenceList.get(simSlotNumber); simStatusPreference.setTitle(getPreferenceTitle(simSlotNumber)); - simStatusPreference.setSummary(getPhoneNumber(simSlotNumber)); + simStatusPreference.setSummary(getSummary()); } } diff --git a/src/com/android/settings/deviceinfo/imei/ImeiInfoPreferenceController.java b/src/com/android/settings/deviceinfo/imei/ImeiInfoPreferenceController.java index 027e8c806ca..e90477270e0 100644 --- a/src/com/android/settings/deviceinfo/imei/ImeiInfoPreferenceController.java +++ b/src/com/android/settings/deviceinfo/imei/ImeiInfoPreferenceController.java @@ -96,7 +96,7 @@ public class ImeiInfoPreferenceController extends BasePreferenceController { @Override public CharSequence getSummary() { - return getSummary(0); + return mContext.getString(R.string.device_info_protected_single_press); } private CharSequence getSummary(int simSlot) { @@ -113,6 +113,7 @@ public class ImeiInfoPreferenceController extends BasePreferenceController { } ImeiInfoDialogFragment.show(mFragment, simSlot, preference.getTitle().toString()); + preference.setSummary(getSummary(simSlot)); return true; } @@ -129,7 +130,7 @@ public class ImeiInfoPreferenceController extends BasePreferenceController { private void updatePreference(Preference preference, int simSlot) { preference.setTitle(getTitle(simSlot)); - preference.setSummary(getSummary(simSlot)); + preference.setSummary(getSummary()); } private CharSequence getTitleForGsmPhone(int simSlot) {