aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
diff options
context:
space:
mode:
authorTom Ouyang <ouyang@google.com>2015-03-05 15:32:14 -0800
committerTom Ouyang <ouyang@google.com>2015-03-05 17:42:35 -0800
commit222f647137917ef602c1e1510c499a42d2e1eb47 (patch)
tree3eacaca5c6ac988cf60c047ec8581bf9d7acc4ad /java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
parent38b9bffa3f60785f30d7976879ddf936f747d7dd (diff)
downloadlatinime-222f647137917ef602c1e1510c499a42d2e1eb47.tar.gz
latinime-222f647137917ef602c1e1510c499a42d2e1eb47.tar.xz
latinime-222f647137917ef602c1e1510c499a42d2e1eb47.zip
Restart suggestions when backspacing into a reverted word.
This is required for the final corrected word to be learned, as learning only occurs when suggestions are active. Note: This is already happening when backspacing into a non-reverted word Bug: 19619907 Bug: 18465402 Change-Id: I99a1d4f0ca0d62a2cdfa24cc0833ce89391715d9
Diffstat (limited to 'java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java')
-rw-r--r--java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
index 92bd60658..934da7ac7 100644
--- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
+++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java
@@ -1027,6 +1027,20 @@ public final class InputLogic {
revertCommit(inputTransaction, inputTransaction.mSettingsValues);
StatsUtils.onRevertAutoCorrect();
StatsUtils.onWordCommitUserTyped(lastComposedWord, mWordComposer.isBatchMode());
+ // Restart suggestions when backspacing into a reverted word. This is required for
+ // the final corrected word to be learned, as learning only occurs when suggestions
+ // are active.
+ //
+ // Note: restartSuggestionsOnWordTouchedByCursor is already called for normal
+ // (non-revert) backspace handling.
+ if (inputTransaction.mSettingsValues.isSuggestionsEnabledPerUserSettings()
+ && inputTransaction.mSettingsValues.mSpacingAndPunctuations
+ .mCurrentLanguageHasSpaces
+ && !mConnection.isCursorFollowedByWordCharacter(
+ inputTransaction.mSettingsValues.mSpacingAndPunctuations)) {
+ restartSuggestionsOnWordTouchedByCursor(inputTransaction.mSettingsValues,
+ false /* forStartInput */, currentKeyboardScriptId);
+ }
return;
}
if (mEnteredText != null && mConnection.sameAsTextBeforeCursor(mEnteredText)) {