summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/res/values/strings.xml6
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/phone/MultiUserSwitch.java21
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;
}