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

Commit b0c693d0 authored by Jean Chalard's avatar Jean Chalard Committed by Android (Google) Code Review
Browse files

Merge "Stop auto-correcting non-whitelisted one-char strings" into jb-mr1-dev

parents 040f1c50 8c06a468
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -73,11 +73,11 @@ public class AutoCorrection {
        return maxFreq;
    }

    // Returns true if this isn't in any dictionary.
    public static boolean isNotAWord(
    // Returns true if this is in any of the dictionaries.
    public static boolean isInTheDictionary(
            final ConcurrentHashMap<String, Dictionary> dictionaries,
            final CharSequence word, final boolean ignoreCase) {
        return !isValidWord(dictionaries, word, ignoreCase);
        return isValidWord(dictionaries, word, ignoreCase);
    }

    public static boolean suggestionExceedsAutoCorrectionThreshold(SuggestedWordInfo suggestion,
+4 −2
Original line number Diff line number Diff line
@@ -214,10 +214,12 @@ public class Suggest {
            whitelistedWord = suggestionsSet.first().mWord;
        }

        // The word can be auto-corrected if it has a whitelist entry that is not itself,
        // or if it's a 2+ characters non-word (i.e. it's not in the dictionary).
        final boolean allowsToBeAutoCorrected = (null != whitelistedWord
                && !whitelistedWord.equals(consideredWord))
                || AutoCorrection.isNotAWord(mDictionaries, consideredWord,
                        wordComposer.isFirstCharCapitalized());
                || (consideredWord.length() > 1 && !AutoCorrection.isInTheDictionary(mDictionaries,
                        consideredWord, wordComposer.isFirstCharCapitalized()));

        final boolean hasAutoCorrection;
        // TODO: using isCorrectionEnabled here is not very good. It's probably useless, because