set the selection after sending a click
Webkit expects the currently focused text input to have a set selection before it can receive key events for insertion. Coincidentally, we always set the selection except when using the 'next' button on the IME to switch between text fields. The selection has to be set after the text field receives focus, so add a setSelection() message after the click() message is sent in passToJavaScript(). fixes http://b/issue?id=2087546
This commit is contained in:
@@ -4766,6 +4766,9 @@ public class WebView extends AbsoluteLayout
|
|||||||
/* package */ void passToJavaScript(String currentText, KeyEvent event) {
|
/* package */ void passToJavaScript(String currentText, KeyEvent event) {
|
||||||
if (nativeCursorWantsKeyEvents() && !nativeCursorMatchesFocus()) {
|
if (nativeCursorWantsKeyEvents() && !nativeCursorMatchesFocus()) {
|
||||||
mWebViewCore.sendMessage(EventHub.CLICK);
|
mWebViewCore.sendMessage(EventHub.CLICK);
|
||||||
|
int select = nativeFocusCandidateIsTextField() ?
|
||||||
|
nativeFocusCandidateMaxLength() : 0;
|
||||||
|
setSelection(select, select);
|
||||||
}
|
}
|
||||||
WebViewCore.JSKeyData arg = new WebViewCore.JSKeyData();
|
WebViewCore.JSKeyData arg = new WebViewCore.JSKeyData();
|
||||||
arg.mEvent = event;
|
arg.mEvent = event;
|
||||||
|
|||||||
Reference in New Issue
Block a user