diff options
Diffstat (limited to 'java/src/com/android/inputmethod/latin/LatinIME.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/LatinIME.java | 67 |
1 files changed, 28 insertions, 39 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 7a4164cf1..33f09e45b 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -183,7 +183,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen switch (msg.what) { case MSG_UPDATE_SUGGESTION_STRIP: latinIme.mInputLogic.performUpdateSuggestionStripSync( - latinIme.mSettings.getCurrent(), this); + latinIme.mSettings.getCurrent(), this /* handler */, + latinIme.mInputUpdater); break; case MSG_UPDATE_SHIFT_STATE: switcher.updateShiftState(); @@ -1060,9 +1061,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen false /* isObsoleteSuggestions */, false /* isPrediction */); // When in fullscreen mode, show completions generated by the application - final boolean isAutoCorrection = false; - setSuggestedWords(suggestedWords, isAutoCorrection); - setAutoCorrectionIndicator(isAutoCorrection); + setSuggestedWords(suggestedWords); + setAutoCorrectionIndicator(false); setSuggestionStripShown(true); if (ProductionFlag.USES_DEVELOPMENT_ONLY_DIAGNOSTICS) { ResearchLogger.latinIME_onDisplayCompletions(applicationSpecifiedCompletions); @@ -1252,13 +1252,14 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen // Implementation of {@link KeyboardActionListener}. @Override public void onCodeInput(final int primaryCode, final int x, final int y) { - mInputLogic.onCodeInput(primaryCode, x, y, mHandler, mKeyboardSwitcher, mSubtypeSwitcher); + mInputLogic.onCodeInput(primaryCode, x, y, mHandler, mInputUpdater, + mKeyboardSwitcher, mSubtypeSwitcher); } // Called from PointerTracker through the KeyboardActionListener interface @Override public void onTextInput(final String rawText) { - mInputLogic.onTextInput(mSettings.getCurrent(), rawText, mHandler); + mInputLogic.onTextInput(mSettings.getCurrent(), rawText, mHandler, mInputUpdater); mKeyboardSwitcher.updateShiftState(); mKeyboardSwitcher.onCodeInput(Constants.CODE_OUTPUT_TEXT); } @@ -1384,20 +1385,20 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen private void getSuggestedWordsGestureLocked(final InputPointers batchPointers, final int sequenceNumber, final OnGetSuggestedWordsCallback callback) { mLatinIme.mInputLogic.mWordComposer.setBatchInputPointers(batchPointers); - mLatinIme.getSuggestedWordsOrOlderSuggestionsAsync(Suggest.SESSION_GESTURE, - sequenceNumber, new OnGetSuggestedWordsCallback() { - @Override - public void onGetSuggestedWords(SuggestedWords suggestedWords) { - if (suggestedWords.isEmpty()) { - // Previous suggestions are found in InputLogic#mSuggestedWords. Since - // these are the most recent suggestions and we just recomputed new - // ones to update them, it means the previous ones are there. - callback.onGetSuggestedWords(mLatinIme.mInputLogic.mSuggestedWords); - } else { - callback.onGetSuggestedWords(suggestedWords); - } - } - }); + getSuggestedWords(Suggest.SESSION_GESTURE, sequenceNumber, + new OnGetSuggestedWordsCallback() { + @Override + public void onGetSuggestedWords(SuggestedWords suggestedWords) { + if (suggestedWords.isEmpty()) { + // Previous suggestions are found in InputLogic#mSuggestedWords. + // Since these are the most recent ones and we just recomputed new + // ones to update them, it means the previous ones are there. + callback.onGetSuggestedWords(mLatinIme.mInputLogic.mSuggestedWords); + } else { + callback.onGetSuggestedWords(suggestedWords); + } + } + }); } public void getSuggestedWords(final int sessionId, final int sequenceNumber, @@ -1504,16 +1505,16 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen // TODO[IL]: Define a clear interface for this public void clearSuggestionStrip() { - setSuggestedWords(SuggestedWords.EMPTY, false); + setSuggestedWords(SuggestedWords.EMPTY); setAutoCorrectionIndicator(false); } // TODO[IL]: Define a clear interface for this - public void setSuggestedWords(final SuggestedWords words, final boolean isAutoCorrection) { + public void setSuggestedWords(final SuggestedWords words) { mInputLogic.mSuggestedWords = words; if (mSuggestionStripView != null) { mSuggestionStripView.setSuggestions(words); - mKeyboardSwitcher.onAutoCorrectionStateChanged(isAutoCorrection); + mKeyboardSwitcher.onAutoCorrectionStateChanged(words.mWillAutoCorrect); } } @@ -1571,20 +1572,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen additionalFeaturesOptions, sessionId, sequenceNumber, callback); } - // TODO[IL]: Move this to InputLogic? - public void getSuggestedWordsOrOlderSuggestionsAsync(final int sessionId, - final int sequenceNumber, final OnGetSuggestedWordsCallback callback) { - mInputUpdater.getSuggestedWords(sessionId, sequenceNumber, - new OnGetSuggestedWordsCallback() { - @Override - public void onGetSuggestedWords(SuggestedWords suggestedWords) { - callback.onGetSuggestedWords(maybeRetrieveOlderSuggestions( - mInputLogic.mWordComposer.getTypedWord(), suggestedWords)); - } - }); - } - - private SuggestedWords maybeRetrieveOlderSuggestions(final String typedWord, + // TODO[IL]: Move this to InputLogic + public SuggestedWords maybeRetrieveOlderSuggestions(final String typedWord, final SuggestedWords suggestedWords) { // TODO: consolidate this into getSuggestedWords // We update the suggestion strip only when we have some suggestions to show, i.e. when @@ -1638,7 +1627,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen autoCorrection = typedWord; } mInputLogic.mWordComposer.setAutoCorrection(autoCorrection); - setSuggestedWords(suggestedWords, suggestedWords.mWillAutoCorrect); + setSuggestedWords(suggestedWords); setAutoCorrectionIndicator(suggestedWords.mWillAutoCorrect); setSuggestionStripShown(isSuggestionsStripVisible()); // An auto-correction is available, cache it in accessibility code so @@ -1757,7 +1746,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen if (currentSettings.mBigramPredictionEnabled) { clearSuggestionStrip(); } else { - setSuggestedWords(currentSettings.mSuggestPuncList, false); + setSuggestedWords(currentSettings.mSuggestPuncList); } setAutoCorrectionIndicator(false); setSuggestionStripShown(isSuggestionsStripVisible()); |