aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2014-01-08 08:59:26 +0000
committerJean Chalard <jchalard@google.com>2014-01-08 08:59:26 +0000
commita247264dc6eb8e9715c67ef831ffc21123dcf237 (patch)
treeafab549dfce2ea835fdabd534a6a663e788ed55c /java/src/com/android
parentdd3d697a6e6713d82020dd63cbf78e4f87664484 (diff)
downloadlatinime-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/com/android')
-rw-r--r--java/src/com/android/inputmethod/latin/RichInputConnection.java4
-rw-r--r--java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java19
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.