Commit 294b262a authored by Dominic Mazzoni's avatar Dominic Mazzoni Committed by Commit Bot

Ensure WebView is focused when handling an accessibility action.

When an Android accessibility service sends us a CLICK or FOCUS action
on a specific node in a WebView, we should first focus the WebView itself.
Otherwise clicking on a text field using an accessibility service doesn't
actually move input focus there and pop up the virtual keyboard.

Bug: 819669
Change-Id: I8e4069324e45516fbc1621723885ad8448fdc862
Reviewed-on: https://chromium-review.googlesource.com/953322Reviewed-by: default avatarPaul Miller <paulmiller@chromium.org>
Commit-Queue: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541748}
parent 832c78b1
...@@ -432,9 +432,11 @@ public class WebContentsAccessibilityImpl extends AccessibilityNodeProvider ...@@ -432,9 +432,11 @@ public class WebContentsAccessibilityImpl extends AccessibilityNodeProvider
} }
return true; return true;
case AccessibilityNodeInfo.ACTION_CLICK: case AccessibilityNodeInfo.ACTION_CLICK:
if (!mView.hasFocus()) mView.requestFocus();
nativeClick(mNativeObj, virtualViewId); nativeClick(mNativeObj, virtualViewId);
return true; return true;
case AccessibilityNodeInfo.ACTION_FOCUS: case AccessibilityNodeInfo.ACTION_FOCUS:
if (!mView.hasFocus()) mView.requestFocus();
nativeFocus(mNativeObj, virtualViewId); nativeFocus(mNativeObj, virtualViewId);
return true; return true;
case AccessibilityNodeInfo.ACTION_CLEAR_FOCUS: case AccessibilityNodeInfo.ACTION_CLEAR_FOCUS:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment