From e5dee0af4ae991988919b2c5b80c10a94b26884e Mon Sep 17 00:00:00 2001 From: Jean Chalard Date: Fri, 21 Jun 2013 15:59:06 +0900 Subject: Fix a bug in the cached cursor pos, and simplify selection handling The documentation for setComposingRegion states explicitly that it does not move the cursor. This is just a bug. This does not have any ill effects right now, but it will have in later changes if not fixed. As for the selection handling, the specific test that this code removes used to serve a purpose, but it does not any more because the code using the value has been much sanitized. Now the variable can just take the obvious value, and become so self-explanatory that the comments are unnecessary. Change-Id: I548d899b38776bd3ab5f5361aab0d89d98f12e73 --- java/src/com/android/inputmethod/latin/RichInputConnection.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'java/src/com/android/inputmethod/latin/RichInputConnection.java') diff --git a/java/src/com/android/inputmethod/latin/RichInputConnection.java b/java/src/com/android/inputmethod/latin/RichInputConnection.java index 980215de6..6226f9b21 100644 --- a/java/src/com/android/inputmethod/latin/RichInputConnection.java +++ b/java/src/com/android/inputmethod/latin/RichInputConnection.java @@ -338,7 +338,6 @@ public final class RichInputConnection { public void setComposingRegion(final int start, final int end) { if (DEBUG_BATCH_NESTING) checkBatchEdit(); if (DEBUG_PREVIOUS_TEXT) checkConsistencyForDebug(); - mCurrentCursorPosition = end; final CharSequence textBeforeCursor = getTextBeforeCursor(DEFAULT_TEXT_CACHE_SIZE + (end - start), 0); mCommittedTextBeforeComposingText.setLength(0); @@ -722,6 +721,14 @@ public final class RichInputConnection { return (newSelStart - oldSelStart) * (mCurrentCursorPosition - newSelStart) >= 0; } + /** + * The user moved the cursor by hand. Take a note of it. + * @param newCursorPosition The new cursor position. + */ + public void userMovedCursor(final int newCursorPosition) { + mCurrentCursorPosition = newCursorPosition; + } + /** * Looks at the text just before the cursor to find out if it looks like a URL. * -- cgit v1.2.3-83-g751a