From d1c5d1ad9330baa78e9ac9bc9d5b1bb158806c12 Mon Sep 17 00:00:00 2001 From: Nate Myren Date: Wed, 29 Jan 2025 15:50:12 -0800 Subject: Update subtext for Restricted Preferences when blocked by ECM When the ECM block is due to a phone call, they should display "Unavailable during phone call". Bug: 364535720 Relnote: none Flag: EXEMPT minor string change Test: manual Change-Id: I5342f46a39c417ff7b5bfff9fa3b3b836a2db9ca --- .../android/settingslib/RestrictedPreferenceHelper.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'packages/SettingsLib/src') diff --git a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java index 212e43aa4044..1044750bae25 100644 --- a/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java +++ b/packages/SettingsLib/src/com/android/settingslib/RestrictedPreferenceHelper.java @@ -44,6 +44,8 @@ import androidx.preference.PreferenceViewHolder; public class RestrictedPreferenceHelper { private static final String TAG = "RestrictedPreferenceHelper"; + private static final String REASON_PHONE_STATE = "phone_state"; + private final Context mContext; private final Preference mPreference; String packageName; @@ -121,7 +123,7 @@ public class RestrictedPreferenceHelper { if (mDisabledByAdmin) { summaryView.setText(disabledText); } else if (mDisabledByEcm) { - summaryView.setText(R.string.disabled_by_app_ops_text); + summaryView.setText(getEcmTextResId()); } else if (TextUtils.equals(disabledText, summaryView.getText())) { // It's previously set to disabled text, clear it. summaryView.setText(null); @@ -323,7 +325,16 @@ public class RestrictedPreferenceHelper { } if (!isEnabled && mDisabledByEcm) { - mPreference.setSummary(R.string.disabled_by_app_ops_text); + mPreference.setSummary(getEcmTextResId()); + } + } + + private int getEcmTextResId() { + if (mDisabledByEcmIntent != null && REASON_PHONE_STATE.equals( + mDisabledByEcmIntent.getStringExtra(Intent.EXTRA_REASON))) { + return R.string.disabled_in_phone_call_text; + } else { + return R.string.disabled_by_app_ops_text; } } -- cgit v1.2.3-59-g8ed1b