Auto correct on gesture when typed word is 1 char long
Bug: 7178462 Change-Id: I779d8ee4a957a9d1fdcc80d33257a98965dec7b8
This commit is contained in:
parent
bfcd2b3fc0
commit
b4e74cfc87
1 changed files with 12 additions and 1 deletions
|
@ -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.
|
||||
|
|
Loading…
Reference in a new issue