diff options
author | 2014-08-27 10:07:53 +0000 | |
---|---|---|
committer | 2014-08-27 10:07:53 +0000 | |
commit | 4db998d65aed92a7ea8727702a8bd9ca427ed97c (patch) | |
tree | 39b82fc7c49275739bac033430a652317f697e83 /java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java | |
parent | 2b06811843fb88763433819ded4b99470e3019fa (diff) | |
parent | d8380fdba04d82566c623f1efbcb86aa33d9e401 (diff) | |
download | latinime-4db998d65aed92a7ea8727702a8bd9ca427ed97c.tar.gz latinime-4db998d65aed92a7ea8727702a8bd9ca427ed97c.tar.xz latinime-4db998d65aed92a7ea8727702a8bd9ca427ed97c.zip |
am d8380fdb: Merge "resolved conflicts for merge of 8159336b to master"
* commit 'd8380fdba04d82566c623f1efbcb86aa33d9e401':
Set the text bgcolor only when CursorAnchorInfo is available
Diffstat (limited to 'java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java index e13ac064f..ad72b60b6 100644 --- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java +++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java @@ -50,6 +50,7 @@ import com.android.inputmethod.latin.SuggestedWords; import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo; import com.android.inputmethod.latin.WordComposer; import com.android.inputmethod.latin.define.DebugFlags; +import com.android.inputmethod.latin.define.ProductionFlags; import com.android.inputmethod.latin.settings.SettingsValues; import com.android.inputmethod.latin.settings.SettingsValuesForSuggestion; import com.android.inputmethod.latin.settings.SpacingAndPunctuations; @@ -140,8 +141,9 @@ public final class InputLogic { * Call this when input starts or restarts in some editor (typically, in onStartInputView). * * @param combiningSpec the combining spec string for this subtype + * @param settingsValues the current settings values */ - public void startInput(final String combiningSpec) { + public void startInput(final String combiningSpec, final SettingsValues settingsValues) { mEnteredText = null; mWordComposer.restartCombining(combiningSpec); resetComposingState(true /* alsoResetLastComposedWord */); @@ -159,15 +161,24 @@ public final class InputLogic { } else { mInputLogicHandler.reset(); } + + if (ProductionFlags.ENABLE_CURSOR_ANCHOR_INFO_CALLBACK) { + // AcceptTypedWord feature relies on CursorAnchorInfo. + if (settingsValues.mShouldShowUiToAcceptTypedWord) { + mConnection.requestUpdateCursorAnchorInfo(true /* enableMonitor */, + true /* requestImmediateCallback */); + } + } } /** * Call this when the subtype changes. * @param combiningSpec the spec string for the combining rules + * @param settingsValues the current settings values */ - public void onSubtypeChanged(final String combiningSpec) { + public void onSubtypeChanged(final String combiningSpec, final SettingsValues settingsValues) { finishInput(); - startInput(combiningSpec); + startInput(combiningSpec, settingsValues); } /** @@ -2238,6 +2249,10 @@ public final class InputLogic { */ private boolean shouldShowCommitIndicator(final SuggestedWords suggestedWords, final SettingsValues settingsValues) { + if (!mConnection.isCursorAnchorInfoMonitorEnabled()) { + // We cannot help in this case because we are heavily relying on this new API. + return false; + } if (!settingsValues.mShouldShowUiToAcceptTypedWord) { return false; } |