diff options
author | 2012-09-20 00:17:18 -0700 | |
---|---|---|
committer | 2012-09-20 00:17:19 -0700 | |
commit | 49d080f088a82e18a2e0f6095e7443e7b837f714 (patch) | |
tree | e4520b79db8899a24279480a28910c70222a95c0 /java/src | |
parent | 430eed6daef111a6d37184ed55b1e196fbb902f9 (diff) | |
parent | b4e74cfc87ccb0523da18cb9fe30a6d08d1a04e2 (diff) | |
download | latinime-49d080f088a82e18a2e0f6095e7443e7b837f714.tar.gz latinime-49d080f088a82e18a2e0f6095e7443e7b837f714.tar.xz latinime-49d080f088a82e18a2e0f6095e7443e7b837f714.zip |
Merge "Auto correct on gesture when typed word is 1 char long" into jb-mr1-dev
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/latin/LatinIME.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index bf64b4f08..9252b0980 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -1401,7 +1401,18 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen Stats.onAutoCorrection("", mWordComposer.getTypedWord(), " ", mWordComposer); } } - commitTyped(LastComposedWord.NOT_A_SEPARATOR); + if (mWordComposer.size() <= 1) { + // We auto-correct the previous (typed, not gestured) string iff it's one character + // long. The reason for this is, even in the middle of gesture typing, you'll still + // tap one-letter words and you want them auto-corrected (typically, "i" in English + // should become "I"). However for any longer word, we assume that the reason for + // tapping probably is that the word you intend to type is not in the dictionary, + // so we do not attempt to correct, on the assumption that if that was a dictionary + // word, the user would probably have gestured instead. + commitCurrentAutoCorrection(LastComposedWord.NOT_A_SEPARATOR); + } else { + commitTyped(LastComposedWord.NOT_A_SEPARATOR); + } mExpectingUpdateSelection = true; // The following is necessary for the case where the user typed something but didn't // manual pick it and didn't input any separator. |