Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5b6ebdbe authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka Committed by Android (Google) Code Review
Browse files

Merge "Refactor logic to retrieve relevant suggestions a bit"

parents 837cdd73 3033cc51
Loading
Loading
Loading
Loading
+16 −22
Original line number Diff line number Diff line
@@ -1407,7 +1407,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen

    // TODO[IL]: Move this to InputLogic
    public SuggestedWords maybeRetrieveOlderSuggestions(final String typedWord,
            final SuggestedWords suggestedWords) {
            final SuggestedWords suggestedWords, final SuggestedWords previousSuggestedWords) {
        // TODO: consolidate this into getSuggestedWords
        // We update the suggestion strip only when we have some suggestions to show, i.e. when
        // the suggestion count is > 1; else, we leave the old suggestions, with the typed word
@@ -1420,22 +1420,15 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
                || mSuggestionStripView.isShowingAddToDictionaryHint()) {
            return suggestedWords;
        } else {
            return getOlderSuggestions(typedWord);
        }
    }

    private SuggestedWords getOlderSuggestions(final String typedWord) {
        SuggestedWords previousSuggestedWords = mInputLogic.mSuggestedWords;
        if (previousSuggestedWords
                == mSettings.getCurrent().mSpacingAndPunctuations.mSuggestPuncList) {
            previousSuggestedWords = SuggestedWords.EMPTY;
        }
        if (typedWord == null) {
            return previousSuggestedWords;
            final SuggestedWords punctuationList =
                    mSettings.getCurrent().mSpacingAndPunctuations.mSuggestPuncList;
            final SuggestedWords oldSuggestedWords = previousSuggestedWords == punctuationList
                            ? SuggestedWords.EMPTY : previousSuggestedWords;
            if (TextUtils.isEmpty(typedWord)) {
                return oldSuggestedWords;
            }
            final ArrayList<SuggestedWords.SuggestedWordInfo> typedWordAndPreviousSuggestions =
                SuggestedWords.getTypedWordAndPreviousSuggestions(typedWord,
                        previousSuggestedWords);
                    SuggestedWords.getTypedWordAndPreviousSuggestions(typedWord, oldSuggestedWords);
            return new SuggestedWords(typedWordAndPreviousSuggestions,
                    false /* typedWordValid */,
                    false /* hasAutoCorrectionCandidate */,
@@ -1443,6 +1436,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
                    true /* isObsoleteSuggestions */,
                    false /* isPrediction */);
        }
    }

    private void showSuggestionStripWithTypedWord(final SuggestedWords suggestedWords,
            final String typedWord) {
+2 −1
Original line number Diff line number Diff line
@@ -1031,7 +1031,8 @@ public final class InputLogic {
                    public void onGetSuggestedWords(final SuggestedWords suggestedWords) {
                        final SuggestedWords suggestedWordsWithMaybeOlderSuggestions =
                                mLatinIME.maybeRetrieveOlderSuggestions(
                                        mWordComposer.getTypedWord(), suggestedWords);
                                        mWordComposer.getTypedWord(), suggestedWords,
                                        mSuggestedWords);
                        holder.set(suggestedWordsWithMaybeOlderSuggestions);
                    }
                }