diff options
Diffstat (limited to 'core/java')
-rw-r--r-- | core/java/android/view/accessibility/AccessibilityManager.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/view/accessibility/AccessibilityManager.java b/core/java/android/view/accessibility/AccessibilityManager.java index 2e8f1a2..00f4adb 100644 --- a/core/java/android/view/accessibility/AccessibilityManager.java +++ b/core/java/android/view/accessibility/AccessibilityManager.java @@ -415,14 +415,18 @@ public final class AccessibilityManager { final boolean touchExplorationEnabled = (stateFlags & STATE_FLAG_TOUCH_EXPLORATION_ENABLED) != 0; synchronized (mHandler) { + final boolean wasEnabled = mIsEnabled; + final boolean wasTouchExplorationEnabled = mIsTouchExplorationEnabled; + + // Ensure listeners get current state from isZzzEnabled() calls. mIsEnabled = enabled; mIsTouchExplorationEnabled = touchExplorationEnabled; - if (enabled != mIsEnabled) { + if (wasEnabled != enabled) { notifyAccessibilityStateChangedLh(); } - if (touchExplorationEnabled != mIsTouchExplorationEnabled) { + if (wasTouchExplorationEnabled != touchExplorationEnabled) { notifyTouchExplorationStateChangedLh(); } } |