Fix a bug with enterTouchMode removing focus

Bug: 6347083
 Fix an issue where enterTouchMode would remove focus from the
 view that already has focus and is focusableInTouchMode. This
 causes issues with WebView, as it updates internal state when
 losing and gaining focus.

Change-Id: I5c1f72cc08baf3445e2be9e0496606a53fb9929e
This commit is contained in:
John Reck
2012-04-17 14:29:05 -07:00
parent a0e9d0f60e
commit 09dd116cd3

View File

@@ -2977,7 +2977,10 @@ public final class ViewRootImpl implements ViewParent,
// be when the window is first being added, and mFocused isn't
// set yet.
final View focused = mView.findFocus();
if (focused != null && !focused.isFocusableInTouchMode()) {
if (focused != null) {
if (focused.isFocusableInTouchMode()) {
return true;
}
final ViewGroup ancestorToTakeFocus =
findAncestorToTakeFocusInTouchMode(focused);
if (ancestorToTakeFocus != null) {