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

Commit dd931c47 authored by Jean Chalard's avatar Jean Chalard
Browse files

Some more simplification

I wish "are we autocorrecting?" was not computed in a dozen
places all depending on a hundred code paths
More than likely, this fixes very subtle discrepancies
between auto-correction indicator with the underline and with
the LED on the spacebar - which is not displayed any more in
the current version anyway. Especially, the LED probably
would have been off when the word was caught by the safety net.

Change-Id: Idda3021771081d6155b06915e728ecd64d9e042e
parent e2a50bd8
Loading
Loading
Loading
Loading
+10 −9
Original line number Diff line number Diff line
@@ -980,8 +980,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
                    .setHasMinimalSuggestion(false);
            // When in fullscreen mode, show completions generated by the application
            final SuggestedWords words = builder.build();
            setSuggestions(words);
            setAutoCorrectionIndicator(Utils.willAutoCorrect(words));
            final boolean isAutoCorrection = Utils.willAutoCorrect(words);
            setSuggestions(words, isAutoCorrection);
            setAutoCorrectionIndicator(isAutoCorrection);
            // TODO: is this the right thing to do? What should we auto-correct to in
            // this case? This says to keep whatever the user typed.
            mWordComposer.setAutoCorrection(mWordComposer.getTypedWord());
@@ -1714,15 +1715,14 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
    }

    public void clearSuggestions() {
        setSuggestions(SuggestedWords.EMPTY);
        setSuggestions(SuggestedWords.EMPTY, false);
        setAutoCorrectionIndicator(false);
    }

    public void setSuggestions(final SuggestedWords words) {
    public void setSuggestions(final SuggestedWords words, final boolean isAutoCorrection) {
        if (mSuggestionsView != null) {
            mSuggestionsView.setSuggestions(words);
            mKeyboardSwitcher.onAutoCorrectionStateChanged(
                    words.hasWordAboveAutoCorrectionScoreThreshold());
            mKeyboardSwitcher.onAutoCorrectionStateChanged(isAutoCorrection);
        }
    }

@@ -1851,8 +1851,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
            autoCorrection = null;
        }
        mWordComposer.setAutoCorrection(autoCorrection);
        setSuggestions(suggestedWords);
        setAutoCorrectionIndicator(Utils.willAutoCorrect(suggestedWords));
        final boolean isAutoCorrection = Utils.willAutoCorrect(suggestedWords);
        setSuggestions(suggestedWords, isAutoCorrection);
        setAutoCorrectionIndicator(isAutoCorrection);
        setSuggestionStripShown(isSuggestionsStripVisible());
    }

@@ -2025,7 +2026,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
    }

    public void setPunctuationSuggestions() {
        setSuggestions(mSettingsValues.mSuggestPuncList);
        setSuggestions(mSettingsValues.mSuggestPuncList, false);
        setAutoCorrectionIndicator(false);
        setSuggestionStripShown(isSuggestionsStripVisible());
    }