diff options
| -rw-r--r-- | packages/SystemUI/res/values/strings.xml | 6 | ||||
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/phone/MultiUserSwitch.java | 21 |
2 files changed, 27 insertions, 0 deletions
diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml index 50eb3e5fb4e1..c24fcae74ead 100644 --- a/packages/SystemUI/res/values/strings.xml +++ b/packages/SystemUI/res/values/strings.xml @@ -678,6 +678,12 @@ <!-- Related to user switcher --><skip/> + <!-- Accessibility label for the button that opens the user switcher. --> + <string name="accessibility_multi_user_switch_switcher">Switch user</string> + + <!-- Accessibility label for the button that opens the quick contact of the user. --> + <string name="accessibility_multi_user_switch_quick_contact">Show profile</string> + <!-- Label for the adding a new user in the user switcher [CHAR LIMIT=35] --> <string name="user_add_user">Add user</string> diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/MultiUserSwitch.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/MultiUserSwitch.java index 47325c82fab4..d7144dadcd9e 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/MultiUserSwitch.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/MultiUserSwitch.java @@ -21,10 +21,13 @@ import android.content.Intent; import android.os.UserHandle; import android.os.UserManager; import android.provider.ContactsContract; +import android.text.TextUtils; import android.util.AttributeSet; import android.view.View; +import android.view.accessibility.AccessibilityEvent; import android.widget.FrameLayout; +import com.android.systemui.R; import com.android.systemui.qs.QSPanel; import com.android.systemui.statusbar.policy.KeyguardUserSwitcher; @@ -36,9 +39,11 @@ public class MultiUserSwitch extends FrameLayout implements View.OnClickListener private QSPanel mQsPanel; private KeyguardUserSwitcher mKeyguardUserSwitcher; private boolean mKeyguardMode; + final UserManager mUserManager; public MultiUserSwitch(Context context, AttributeSet attrs) { super(context, attrs); + mUserManager = UserManager.get(getContext()); } @Override @@ -80,6 +85,22 @@ public class MultiUserSwitch extends FrameLayout implements View.OnClickListener } @Override + public void onPopulateAccessibilityEvent(AccessibilityEvent event) { + super.onPopulateAccessibilityEvent(event); + + if (isClickable()) { + final UserManager um = UserManager.get(getContext()); + String text = mContext.getString(um.isUserSwitcherEnabled() + ? R.string.accessibility_multi_user_switch_switcher + : R.string.accessibility_multi_user_switch_quick_contact); + if (!TextUtils.isEmpty(text)) { + event.getText().add(text); + } + } + + } + + @Override public boolean hasOverlappingRendering() { return false; } |