From f71e1db2da5f80f91b6aece5794c8cfff7c476c0 Mon Sep 17 00:00:00 2001 From: Jean Chalard Date: Tue, 17 Sep 2013 22:34:47 +0900 Subject: [PATCH] Don't resume suggestion on digits. Bug: 10780016 Change-Id: I94fad06e4c71eddc96bdda1765925f98bed160f3 --- java/src/com/android/inputmethod/latin/LatinIME.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index d3a18d410..bfb904422 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -2685,6 +2685,13 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen return prevWord; } + private boolean isResumableWord(final String word, final SettingsValues settings) { + final int firstCodePoint = word.codePointAt(0); + return settings.isWordCodePoint(firstCodePoint) + && Constants.CODE_SINGLE_QUOTE != firstCodePoint + && Constants.CODE_DASH != firstCodePoint; + } + /** * Check if the cursor is touching a word. If so, restart suggestions on this word, else * do nothing. @@ -2714,6 +2721,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen if (numberOfCharsInWordBeforeCursor > mLastSelectionStart) return; final ArrayList suggestions = CollectionUtils.newArrayList(); final String typedWord = range.mWord.toString(); + if (!isResumableWord(typedWord, currentSettings)) return; int i = 0; for (final SuggestionSpan span : range.getSuggestionSpansAtWord()) { for (final String s : span.getSuggestions()) {