diff options
| -rw-r--r-- | services/java/com/android/server/accessibility/AccessibilityManagerService.java | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/services/java/com/android/server/accessibility/AccessibilityManagerService.java b/services/java/com/android/server/accessibility/AccessibilityManagerService.java index 1ad80470f717..d96369b101fb 100644 --- a/services/java/com/android/server/accessibility/AccessibilityManagerService.java +++ b/services/java/com/android/server/accessibility/AccessibilityManagerService.java @@ -642,14 +642,16 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub } /** - * Installs or removes the accessibility input filter when accessibility is enabled - * or disabled. + * Sets the input filter state. If the filter is in enabled it is registered + * in the window manager, otherwise the filter is removed from the latter. + * + * @param enabled Whether the input filter is enabled. */ - private void updateInputFilterLocked() { + private void setInputFilterEnabledLocked(boolean enabled) { WindowManagerService wm = (WindowManagerService)ServiceManager.getService( Context.WINDOW_SERVICE); if (wm != null) { - if (mIsEnabled) { + if (enabled) { if (mInputFilter == null) { mInputFilter = new AccessibilityInputFilter(mContext); } @@ -681,7 +683,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub if (enabledServices.size() > 0 && service.mFeedbackType == AccessibilityServiceInfo.FEEDBACK_SPOKEN) { updateClientsLocked(); - updateInputFilterLocked(); + setInputFilterEnabledLocked(true); } } @@ -697,7 +699,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub if (enabledServices.isEmpty() && service.mFeedbackType == AccessibilityServiceInfo.FEEDBACK_SPOKEN) { updateClientsLocked(); - updateInputFilterLocked(); + setInputFilterEnabledLocked(false); } } |