From 37fc1c1ce4629973a101ab5cde41406bb6266793 Mon Sep 17 00:00:00 2001 From: Phil Weaver Date: Wed, 11 May 2016 16:24:13 -0700 Subject: [PATCH] Don't disrupt a11y state when user is unlocked. AccessibilityManagerService#unlockUser was assuming that we should switch to the unlocked user's state. If that user is a new work profile, this transition disables all accessibility features. Bug: 28726050 Change-Id: I3797d34b580d00642b204fff3fc9a07b720738e0 --- .../android/server/accessibility/AccessibilityManagerService.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java index 7f977dd425fd..7da969f8fb6e 100644 --- a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java +++ b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java @@ -902,8 +902,11 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub { private void unlockUser(int userId) { synchronized (mLock) { - UserState userState = getUserStateLocked(userId); - onUserStateChangedLocked(userState); + int parentUserId = mSecurityPolicy.resolveProfileParentLocked(userId); + if (parentUserId == mCurrentUserId) { + UserState userState = getUserStateLocked(mCurrentUserId); + onUserStateChangedLocked(userState); + } } } -- 2.11.0