Allow proper text editing after clicking with the trackball.
As with the recent change to make a touch bring up the WebTextView,
so that the trackball can be used, and we get text editing goodness,
we also need to bring up the WebTextView when clicking the trackball.
Also do not call overrideUrlLoading for an input field and add a
comment.
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index 41e007e..d86a860 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -4582,6 +4582,9 @@
break;
}
case SWITCH_TO_CLICK:
+ // The user clicked with the trackball, and did not click a
+ // second time, so perform the action of a trackball single
+ // click
mTouchMode = TOUCH_DONE_MODE;
Rect visibleRect = sendOurVisibleRect();
// Note that sendOurVisibleRect calls viewToContent, so the
@@ -4593,9 +4596,14 @@
mWebViewCore.sendMessage(EventHub.SET_MOVE_MOUSE,
cursorData());
playSoundEffect(SoundEffectConstants.CLICK);
- if (!mCallbackProxy.uiOverrideUrlLoading(nativeCursorText())) {
+ boolean isTextInput = nativeCursorIsTextInput();
+ if (isTextInput || !mCallbackProxy.uiOverrideUrlLoading(
+ nativeCursorText())) {
mWebViewCore.sendMessage(EventHub.CLICK);
}
+ if (isTextInput) {
+ rebuildWebTextView();
+ }
break;
case SCROLL_BY_MSG_ID:
setContentScrollBy(msg.arg1, msg.arg2, (Boolean) msg.obj);