From 034c3260781f6f42d8f0252379d9fa6fd5c9d4d3 Mon Sep 17 00:00:00 2001 From: Yohei Yukawa Date: Sun, 24 Aug 2014 19:43:47 -0700 Subject: [PATCH] Dismiss "Add to dictionary" hint with non-special char event This CL slightly extends the condition when "Add to dictionary" hint is dismissed. With this CL, "Add to dictionary hint" will be dismissed by any non-special char event. This is more comfortable especially if we start using more intrusive UIs such as indicator and/or background color with the text hint in the suggestion strip. Change-Id: I2ea0fa40d9c6663ebf5d5439be3eca2a2cbd5166 --- .../android/inputmethod/latin/inputlogic/InputLogic.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java index 348bae63a..4028b2810 100644 --- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java +++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java @@ -743,6 +743,13 @@ public final class InputLogic { final InputTransaction inputTransaction, // TODO: remove this argument final LatinIME.UIHandler handler) { + // In case the "add to dictionary" hint was still displayed. + // TODO: Do we really need to check if we have composing text here? + if (!mWordComposer.isComposingWord() && + mSuggestionStripViewAccessor.isShowingAddToDictionaryHint()) { + mSuggestionStripViewAccessor.dismissAddToDictionaryHint(); + } + final int codePoint = event.mCodePoint; mSpaceState = SpaceState.NONE; if (inputTransaction.mSettingsValues.isWordSeparator(codePoint) @@ -838,8 +845,6 @@ public final class InputLogic { } else { sendKeyCodePoint(settingsValues, codePoint); } - // In case the "add to dictionary" hint was still displayed. - mSuggestionStripViewAccessor.dismissAddToDictionaryHint(); } inputTransaction.setRequiresUpdateSuggestions(); }