diff options
author | 2014-01-08 08:59:26 +0000 | |
---|---|---|
committer | 2014-01-08 08:59:26 +0000 | |
commit | a247264dc6eb8e9715c67ef831ffc21123dcf237 (patch) | |
tree | afab549dfce2ea835fdabd534a6a663e788ed55c /java/src | |
parent | dd3d697a6e6713d82020dd63cbf78e4f87664484 (diff) | |
download | latinime-a247264dc6eb8e9715c67ef831ffc21123dcf237.tar.gz latinime-a247264dc6eb8e9715c67ef831ffc21123dcf237.tar.xz latinime-a247264dc6eb8e9715c67ef831ffc21123dcf237.zip |
Revert "Fix a race condition, take 2."
Conflicts prevent this to be cherry-picked.
This reverts commit dd3d697a6e6713d82020dd63cbf78e4f87664484.
Change-Id: Ib97fae2234633b4bb27d611f48a79060db9ab16f
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/latin/RichInputConnection.java | 4 | ||||
-rw-r--r-- | java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java | 19 |
2 files changed, 5 insertions, 18 deletions
diff --git a/java/src/com/android/inputmethod/latin/RichInputConnection.java b/java/src/com/android/inputmethod/latin/RichInputConnection.java index 7cf64a3bc..4d174ddb8 100644 --- a/java/src/com/android/inputmethod/latin/RichInputConnection.java +++ b/java/src/com/android/inputmethod/latin/RichInputConnection.java @@ -685,10 +685,6 @@ public final class RichInputConnection { && !settingsValues.isWordConnector(codePointBeforeCursor)) { return true; } - return isCursorFollowedByWordCharacter(settingsValues); - } - - public boolean isCursorFollowedByWordCharacter(final SettingsValues settingsValues) { final CharSequence after = getTextAfterCursor(1, 0); if (!TextUtils.isEmpty(after) && !settingsValues.isWordSeparator(after.charAt(0)) && !settingsValues.isWordConnector(after.charAt(0))) { diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java index 968129a96..e0adacd0c 100644 --- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java +++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java @@ -813,8 +813,7 @@ public final class InputLogic { } } if (settingsValues.isSuggestionStripVisible() - && settingsValues.mSpacingAndPunctuations.mCurrentLanguageHasSpaces - && !mConnection.isCursorFollowedByWordCharacter(settingsValues)) { + && settingsValues.mSpacingAndPunctuations.mCurrentLanguageHasSpaces) { restartSuggestionsOnWordTouchedByCursor(settingsValues, deleteCountAtStart - mDeleteCount /* offset */, true /* includeResumedWordInSuggestions */, keyboardSwitcher); @@ -1115,19 +1114,11 @@ public final class InputLogic { keyboardSwitcher.getKeyboard()); mWordComposer.setCursorPositionWithinWord( typedWord.codePointCount(0, numberOfCharsInWordBeforeCursor)); - // TODO: Change these lines to setComposingRegion(cursorPosition, + // TODO: Change these two lines to setComposingRegion(cursorPosition, // cursorPosition + range.getNumberOfCharsInWordAfterCursor()); - if (0 != offset) { - // Backspace was pressed. We are at the end of a word, and we don't know the cursor - // position for sure, so use relative methods. - mConnection.deleteSurroundingText(numberOfCharsInWordBeforeCursor, 0); - mConnection.setComposingText(typedWord, 1); - } else { - // This is recorrection. The cursor position is reasonably reliable, and the cursor - // may be in the middle of a word so use setComposingRegion. - mConnection.setComposingRegion(expectedCursorPosition - numberOfCharsInWordBeforeCursor, - expectedCursorPosition + range.getNumberOfCharsInWordAfterCursor()); - } + mConnection.deleteSurroundingText(numberOfCharsInWordBeforeCursor, + typedWord.length() - numberOfCharsInWordBeforeCursor); + mConnection.setComposingText(typedWord, 1); if (suggestions.isEmpty()) { // We come here if there weren't any suggestion spans on this word. We will try to // compute suggestions for it instead. |