aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2014-04-16 10:45:42 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-04-16 10:45:42 +0000
commit93e166338a599de3e193aaa5d14d3ad7372e455d (patch)
treec9d83bf60dc9977e0f2cba7699188e50e015742c
parent73a1841dfb869b277ac9430b2546f81a755e56fc (diff)
parentba635ad30d4a0951860448a628ccc1a5cb1eb466 (diff)
downloadlatinime-93e166338a599de3e193aaa5d14d3ad7372e455d.tar.gz
latinime-93e166338a599de3e193aaa5d14d3ad7372e455d.tar.xz
latinime-93e166338a599de3e193aaa5d14d3ad7372e455d.zip
am ba635ad3: Merge "Restart suggestions when restarting input"
* commit 'ba635ad30d4a0951860448a628ccc1a5cb1eb466': Restart suggestions when restarting input
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java4
-rw-r--r--java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java4
-rw-r--r--java/src/com/android/inputmethod/latin/inputlogic/InputLogicHandler.java4
3 files changed, 9 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 2a67cb2a1..a1f70e8d5 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -819,9 +819,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
// When rotating, initialSelStart and initialSelEnd sometimes are lying. Make a best
// effort to work around this bug.
mInputLogic.mConnection.tryFixLyingCursorPosition();
- if (isDifferentTextField) {
- mHandler.postResumeSuggestions();
- }
+ mHandler.postResumeSuggestions();
canReachInputConnection = true;
}
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
index 491d98074..f1f906042 100644
--- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
+++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
@@ -1284,6 +1284,10 @@ public final class InputLogic {
|| !settingsValues.mSpacingAndPunctuations.mCurrentLanguageHasSpaces
// If no suggestions are requested, don't try restarting suggestions.
|| !settingsValues.isSuggestionsRequested()
+ // If we are currently in a batch input, we must not resume suggestions, or the result
+ // of the batch input will replace the new composition. This may happen in the corner case
+ // that the app moves the cursor on its own accord during a batch input.
+ || mInputLogicHandler.isInBatchInput()
// If the cursor is not touching a word, or if there is a selection, return right away.
|| mConnection.hasSelection()
// If we don't know the cursor location, return.
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogicHandler.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogicHandler.java
index 64bba681f..9dbe2c38b 100644
--- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogicHandler.java
+++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogicHandler.java
@@ -110,6 +110,10 @@ class InputLogicHandler implements Handler.Callback {
}
}
+ public boolean isInBatchInput() {
+ return mInBatchInput;
+ }
+
/**
* Fetch suggestions corresponding to an update of a batch input.
* @param batchPointers the updated pointers, including the part that was passed last time.