Fix SMS and Calls preference summary displays empty.

SMS and Calls preference summary set to summary_placeholder in displayPreference's every call. But displayPreference can be called multiple times, so it may result in SMS and Calls preference summary displays empty when refreshSummary is not explicitly called after displayPreference's last call.

Move the summary placeholder setting to layout xml.

Bug: 331874741
Change-Id: I4c6f34dd813fa9a6d7e2c4df2cac279679ee6960
This commit is contained in:
hoffc
2024-03-29 15:32:13 +08:00
parent 1614fc4180
commit 27255b7a7c
2 changed files with 2 additions and 2 deletions

View File

@@ -37,6 +37,7 @@
<ListPreference
android:key="calls_preference"
android:title="@string/calls_preference"
android:summary="@string/summary_placeholder"
android:enabled="false"
settings:controller="com.android.settings.network.telephony.CallsDefaultSubscriptionController"
settings:allowDividerAbove="true"/>
@@ -44,6 +45,7 @@
<ListPreference
android:key="sms_preference"
android:title="@string/sms_preference"
android:summary="@string/summary_placeholder"
android:enabled="false"
settings:controller="com.android.settings.network.telephony.SmsDefaultSubscriptionController"/>

View File

@@ -112,8 +112,6 @@ public abstract class DefaultSubscriptionController extends TelephonyBasePrefere
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
mPreference = screen.findPreference(getPreferenceKey());
// Set a summary placeholder to reduce flicker.
mPreference.setSummaryProvider(pref -> mContext.getString(R.string.summary_placeholder));
updateEntries();
}