From 525ae2075cf96d3a2ac67cd3a662069fd579f42d Mon Sep 17 00:00:00 2001 From: Svetoslav Ganov Date: Mon, 21 May 2012 17:35:10 -0700 Subject: [PATCH] Accessibility focus and input focus do not sync - part 2 1. This patch has somecode that syncs input and accessibility focus or tries to put accessibility focus on the top most container that was missed by the previous patch. Change-Id: I08f21670b1c6e9f363d5714b1976fb52d84baae4 --- core/java/android/view/View.java | 9 --------- core/java/android/view/ViewRootImpl.java | 14 -------------- 2 files changed, 23 deletions(-) diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index df64e34a52f4f..d438485589824 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -6212,15 +6212,6 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal // Clear the text navigation state. setAccessibilityCursorPosition(-1); - - // Try to move accessibility focus to the input focus. - View rootView = getRootView(); - if (rootView != null) { - View inputFocus = rootView.findFocus(); - if (inputFocus != null) { - inputFocus.requestAccessibilityFocus(); - } - } } } diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index d9e35453468c3..0deb59f951c72 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -2993,20 +2993,6 @@ public final class ViewRootImpl implements ViewParent, if (hasWindowFocus) { mView.sendAccessibilityEvent( AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED); - // Give accessibility focus to the view that has input - // focus if such, otherwise to the first one. - if (mView instanceof ViewGroup) { - ViewGroup viewGroup = (ViewGroup) mView; - View focused = viewGroup.findFocus(); - if (focused != null) { - focused.requestAccessibilityFocus(); - } - } - // There is no accessibility focus, despite our effort - // above, now just give it to the first view. - if (mAccessibilityFocusedHost == null) { - mView.requestAccessibilityFocus(); - } } } }