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

Commit 961e676b authored by Satoshi Kataoka's avatar Satoshi Kataoka Committed by Android (Google) Code Review
Browse files

Merge "Set level 1 as the initial value of the valid words" into jb-dev

parents 9a321180 c88f6121
Loading
Loading
Loading
Loading
+19 −1
Original line number Diff line number Diff line
@@ -74,6 +74,24 @@ public class AutoCorrection {
        return false;
    }

    public static int getMaxFrequency(final ConcurrentHashMap<String, Dictionary> dictionaries,
            CharSequence word) {
        if (TextUtils.isEmpty(word)) {
            return Dictionary.NOT_A_PROBABILITY;
        }
        int maxFreq = -1;
        for (final String key : dictionaries.keySet()) {
            if (key.equals(Suggest.DICT_KEY_WHITELIST)) continue;
            final Dictionary dictionary = dictionaries.get(key);
            if (null == dictionary) continue;
            final int tempFreq = dictionary.getFrequency(word);
            if (tempFreq >= maxFreq) {
                maxFreq = tempFreq;
            }
        }
        return maxFreq;
    }

    public static boolean allowsToBeAutoCorrected(
            final ConcurrentHashMap<String, Dictionary> dictionaries,
            final CharSequence word, final boolean ignoreCase) {
+7 −3
Original line number Diff line number Diff line
@@ -201,10 +201,14 @@ public class BinaryDictionary extends Dictionary {

    @Override
    public boolean isValidWord(CharSequence word) {
        if (word == null) return false;
        return getFrequency(word) >= 0;
    }

    @Override
    public int getFrequency(CharSequence word) {
        if (word == null) return -1;
        int[] chars = StringUtils.toCodePointArray(word.toString());
        final int freq = getFrequencyNative(mNativeDict, chars, chars.length);
        return freq >= 0;
        return getFrequencyNative(mNativeDict, chars, chars.length);
    }

    // TODO: Add a batch process version (isValidBigramMultiple?) to avoid excessive numbers of jni
+5 −0
Original line number Diff line number Diff line
@@ -31,6 +31,7 @@ public abstract class Dictionary {
    public static final int UNIGRAM = 0;
    public static final int BIGRAM = 1;

    public static final int NOT_A_PROBABILITY = -1;
    /**
     * Interface to be implemented by classes requesting words to be fetched from the dictionary.
     * @see #getWords(WordComposer, CharSequence, WordCallback, ProximityInfo)
@@ -84,6 +85,10 @@ public abstract class Dictionary {
     */
    abstract public boolean isValidWord(CharSequence word);

    public int getFrequency(CharSequence word) {
        return NOT_A_PROBABILITY;
    }

    /**
     * Compares the contents of the character array with the typed word and returns true if they
     * are the same.
+12 −0
Original line number Diff line number Diff line
@@ -70,6 +70,18 @@ public class DictionaryCollection extends Dictionary {
        return false;
    }

    @Override
    public int getFrequency(CharSequence word) {
        int maxFreq = -1;
        for (int i = mDictionaries.size() - 1; i >= 0; --i) {
            final int tempFreq = mDictionaries.get(i).getFrequency(word);
            if (tempFreq >= maxFreq) {
                maxFreq = tempFreq;
            }
        }
        return maxFreq;
    }

    public boolean isEmpty() {
        return mDictionaries.isEmpty();
    }
+5 −6
Original line number Diff line number Diff line
@@ -84,8 +84,7 @@ public class ExpandableDictionary extends Dictionary {
    protected interface NextWord {
        public Node getWordNode();
        public int getFrequency();
        /** FcValue is a bit set */
        public int getFcValue();
        public ForgettingCurveParams getFcParams();
        public int notifyTypedAgainAndGetFrequency();
    }

@@ -108,8 +107,8 @@ public class ExpandableDictionary extends Dictionary {
        }

        @Override
        public int getFcValue() {
            return mFrequency;
        public ForgettingCurveParams getFcParams() {
            return null;
        }

        @Override
@@ -138,8 +137,8 @@ public class ExpandableDictionary extends Dictionary {
        }

        @Override
        public int getFcValue() {
            return mFcp.getFc();
        public ForgettingCurveParams getFcParams() {
            return mFcp;
        }

        @Override
Loading