diff options
| -rw-r--r-- | core/java/android/webkit/WebTextView.java | 1 | ||||
| -rw-r--r-- | core/java/android/webkit/WebView.java | 4 | ||||
| -rw-r--r-- | core/java/android/widget/TextView.java | 9 |
3 files changed, 13 insertions, 1 deletions
diff --git a/core/java/android/webkit/WebTextView.java b/core/java/android/webkit/WebTextView.java index 3bcd483..14dc61d 100644 --- a/core/java/android/webkit/WebTextView.java +++ b/core/java/android/webkit/WebTextView.java @@ -370,6 +370,7 @@ import java.util.ArrayList; int candEnd = EditableInputConnection.getComposingSpanEnd(sp); imm.updateSelection(this, selStart, selEnd, candStart, candEnd); } + updateCursorControllerPositions(); } @Override diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java index 72b4e36..f5affe5 100644 --- a/core/java/android/webkit/WebView.java +++ b/core/java/android/webkit/WebView.java @@ -3477,7 +3477,9 @@ public class WebView extends AbsoluteLayout if (AUTO_REDRAW_HACK && mAutoRedraw) { invalidate(); } - if (inEditingMode()) mWebTextView.onDrawSubstitute(); + if (inEditingMode()) { + mWebTextView.onDrawSubstitute(); + } mWebViewCore.signalRepaintDone(); // paint the highlight in the end diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index 9855d6e..2fcae1c 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -4277,6 +4277,15 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener canvas.restore(); + updateCursorControllerPositions(); + } + + /** + * Update the positions of the CursorControllers. Needed by WebTextView, + * which does not draw. + * @hide + */ + protected void updateCursorControllerPositions() { if (mInsertionPointCursorController != null && mInsertionPointCursorController.isShowing()) { mInsertionPointCursorController.updatePosition(); |
