diff options
| author | Svetoslav Ganov <svetoslavganov@google.com> | 2012-04-30 12:24:57 -0700 |
|---|---|---|
| committer | Svetoslav Ganov <svetoslavganov@google.com> | 2012-04-30 12:25:31 -0700 |
| commit | 07b726c86b1d0b22e51b08cb4234f8212864d9f9 (patch) | |
| tree | 7b52d00fc589f0083b22128c550ca4172c0a3d2a | |
| parent | 427db9b3d10d5c203d0351e683c3cddfd270250c (diff) | |
| download | frameworks_base-07b726c86b1d0b22e51b08cb4234f8212864d9f9.zip frameworks_base-07b726c86b1d0b22e51b08cb4234f8212864d9f9.tar.gz frameworks_base-07b726c86b1d0b22e51b08cb4234f8212864d9f9.tar.bz2 | |
Enabling accessibility focus only if explore by touch is on.
1. Now we will enable the accessibility focus only if Explore by
Touch is enabled. Enabling this feature allows a blind user to
touch the screen and set the accessibility focus at this
location as well as get spoken feedback. Also an accessibility
service can move the accessibility as a result of user gestures
detected only if Explore by Touch is enabled. Since we will
handle some gestures by default if not accessibility service
does so to provide reasonable built-in navigation of the UI
by "objects" we need the accessibility focus functionality.
bug:6383361
Change-Id: I13ce6072a90f5838c7656379788144c99a772bf0
| -rw-r--r-- | core/java/android/view/View.java | 3 | ||||
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index 588bb06..a300639 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -5942,7 +5942,8 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * @hide */ public boolean requestAccessibilityFocus() { - if (!AccessibilityManager.getInstance(mContext).isEnabled()) { + AccessibilityManager manager = AccessibilityManager.getInstance(mContext); + if (!manager.isEnabled() || !manager.isTouchExplorationEnabled()) { return false; } if ((mViewFlags & VISIBILITY_MASK) != VISIBLE) { diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index c5c7746..aabe043 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -2316,7 +2316,8 @@ public final class ViewRootImpl implements ViewParent, * @param canvas The canvas on which to draw. */ private void drawAccessibilityFocusedDrawableIfNeeded(Canvas canvas) { - if (!AccessibilityManager.getInstance(mView.mContext).isEnabled()) { + AccessibilityManager manager = AccessibilityManager.getInstance(mView.mContext); + if (!manager.isEnabled() || !manager.isTouchExplorationEnabled()) { return; } if (mAccessibilityFocusedHost == null || mAccessibilityFocusedHost.mAttachInfo == null) { |
