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) {