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

Commit 3033cc51 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Refactor logic to retrieve relevant suggestions a bit

Change-Id: Ic7d2cbb2c1b2deaa4e735484bdc7413c0b3b1939
parent 3f3b0af5
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);
                    }
                }