Use label instead of raw value for theme preference summary

Change-Id: I4dd1c156c8e68dd5567093c56d5e6846357fc2d6
Fix: 38470685
Test: make RunSettingsRoboTests
This commit is contained in:
Fan Zhang
2017-05-22 13:30:11 -07:00
parent 7983dba5f6
commit c7d632d313
2 changed files with 58 additions and 12 deletions

View File

@@ -90,11 +90,20 @@ public class ThemePreferenceController extends PreferenceController implements
pref.setEntries(labels);
pref.setEntryValues(pkgs);
String theme = getCurrentTheme();
if (TextUtils.isEmpty(theme)) {
theme = mContext.getString(R.string.default_theme);
pref.setSummary(theme);
CharSequence themeLabel = null;
for (int i = 0; i < pkgs.length; i++) {
if (TextUtils.equals(pkgs[i], theme)) {
themeLabel = labels[i];
break;
}
}
pref.setSummary(theme);
if (TextUtils.isEmpty(themeLabel)) {
themeLabel = mContext.getString(R.string.default_theme);
}
pref.setSummary(themeLabel);
pref.setValue(theme);
}
@@ -127,7 +136,7 @@ public class ThemePreferenceController extends PreferenceController implements
UserHandle.myUserId());
for (int i = 0, size = infos.size(); i < size; i++) {
if (infos.get(i).isEnabled() &&
isChangeableOverlay(infos.get(i).packageName)) {
isChangeableOverlay(infos.get(i).packageName)) {
return infos.get(i).packageName;
}
}