diff --git a/res/values/strings.xml b/res/values/strings.xml index 860e1c8f6d7..efbc430be9a 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -11107,6 +11107,9 @@ Use %1$s\? + + %1$s on/off + Turn off diff --git a/src/com/android/settings/applications/credentials/CredentialManagerPreferenceController.java b/src/com/android/settings/applications/credentials/CredentialManagerPreferenceController.java index 47beeb66e21..a92b755331c 100644 --- a/src/com/android/settings/applications/credentials/CredentialManagerPreferenceController.java +++ b/src/com/android/settings/applications/credentials/CredentialManagerPreferenceController.java @@ -1072,6 +1072,22 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl return mChecked; } + @Override + public void setTitle(@Nullable CharSequence title) { + super.setTitle(title); + maybeUpdateContentDescription(); + } + + private void maybeUpdateContentDescription() { + final CharSequence appName = getTitle(); + + if (mSwitch != null && !TextUtils.isEmpty(appName)) { + mSwitch.setContentDescription( + getContext().getString( + R.string.credman_on_off_switch_content_description, appName)); + } + } + public void setPreferenceListener(OnCombiPreferenceClickListener onClickListener) { mOnClickListener = onClickListener; } @@ -1094,6 +1110,9 @@ public class CredentialManagerPreferenceController extends BasePreferenceControl // Store this for later. mSwitch = switchView; + + // Update the content description. + maybeUpdateContentDescription(); } super.setOnPreferenceClickListener(