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

Commit 660776e0 authored by Ken Wakasa's avatar Ken Wakasa
Browse files

Small performance improvement by removing interface accesses.

Change-Id: I6d91f3b086470b79306dbe2874db9748b9e0eb5f
parent cbb5053b
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -42,7 +42,6 @@ import java.io.IOException;
import java.lang.ref.SoftReference;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;

/**
 * This class represents a set of keyboards. Each of them represents a different keyboard
@@ -75,7 +74,7 @@ public class KeyboardSet {
    }

    public static class KeysCache {
        private final Map<Key, Key> mMap;
        private final HashMap<Key, Key> mMap;

        public KeysCache() {
            mMap = new HashMap<Key, Key>();
@@ -108,7 +107,7 @@ public class KeyboardSet {
        int mOrientation;
        int mWidth;
        // KeyboardSet element id to keyboard layout XML id map.
        final Map<Integer, Integer> mKeyboardSetElementIdToXmlIdMap =
        final HashMap<Integer, Integer> mKeyboardSetElementIdToXmlIdMap =
                new HashMap<Integer, Integer>();
        Params() {}
    }
+7 −7
Original line number Diff line number Diff line
@@ -20,7 +20,7 @@ import android.text.TextUtils;
import android.util.Log;

import java.util.ArrayList;
import java.util.Map;
import java.util.HashMap;

public class AutoCorrection {
    private static final boolean DBG = LatinImeLogger.sDBG;
@@ -30,7 +30,7 @@ public class AutoCorrection {
        // Purely static class: can't instantiate.
    }

    public static CharSequence computeAutoCorrectionWord(Map<String, Dictionary> dictionaries,
    public static CharSequence computeAutoCorrectionWord(HashMap<String, Dictionary> dictionaries,
            WordComposer wordComposer, ArrayList<CharSequence> suggestions, int[] sortedScores,
            CharSequence consideredWord, double autoCorrectionThreshold,
            CharSequence whitelistedWord) {
@@ -47,7 +47,7 @@ public class AutoCorrection {
    }

    public static boolean isValidWord(
            Map<String, Dictionary> dictionaries, CharSequence word, boolean ignoreCase) {
            HashMap<String, Dictionary> dictionaries, CharSequence word, boolean ignoreCase) {
        if (TextUtils.isEmpty(word)) {
            return false;
        }
@@ -72,7 +72,7 @@ public class AutoCorrection {
    }

    public static boolean allowsToBeAutoCorrected(
            Map<String, Dictionary> dictionaries, CharSequence word, boolean ignoreCase) {
            HashMap<String, Dictionary> dictionaries, CharSequence word, boolean ignoreCase) {
        final WhitelistDictionary whitelistDictionary =
                (WhitelistDictionary)dictionaries.get(Suggest.DICT_KEY_WHITELIST);
        // If "word" is in the whitelist dictionary, it should not be auto corrected.
@@ -87,9 +87,9 @@ public class AutoCorrection {
        return whiteListedWord != null;
    }

    private static boolean hasAutoCorrectionForConsideredWord(Map<String, Dictionary> dictionaries,
            WordComposer wordComposer, ArrayList<CharSequence> suggestions,
            CharSequence consideredWord) {
    private static boolean hasAutoCorrectionForConsideredWord(
            HashMap<String, Dictionary> dictionaries, WordComposer wordComposer,
            ArrayList<CharSequence> suggestions, CharSequence consideredWord) {
        if (TextUtils.isEmpty(consideredWord)) return false;
        return wordComposer.size() > 1 && suggestions.size() > 0
                && !allowsToBeAutoCorrected(dictionaries, consideredWord, false);
+2 −3
Original line number Diff line number Diff line
@@ -25,7 +25,6 @@ import android.util.Log;

import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;

/**
@@ -264,9 +263,9 @@ class BinaryDictionaryGetter {
     * - Gets a file name from the fallback resource passed as an argument.
     * If that fails:
     * - Returns null.
     * @return The address of a valid file, or null.
     * @return The list of addresses of valid dictionary files, or null.
     */
    public static List<AssetFileAddress> getDictionaryFiles(final Locale locale,
    public static ArrayList<AssetFileAddress> getDictionaryFiles(final Locale locale,
            final Context context, final int fallbackResId) {

        // cacheWordListsFromContentProvider returns the list of files it copied to local
+1 −2
Original line number Diff line number Diff line
@@ -22,7 +22,6 @@ import android.util.Log;

import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.CopyOnWriteArrayList;

/**
@@ -30,7 +29,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
 */
public class DictionaryCollection extends Dictionary {
    private final String TAG = DictionaryCollection.class.getSimpleName();
    protected final List<Dictionary> mDictionaries;
    protected final CopyOnWriteArrayList<Dictionary> mDictionaries;

    public DictionaryCollection() {
        mDictionaries = new CopyOnWriteArrayList<Dictionary>();
+3 −3
Original line number Diff line number Diff line
@@ -22,8 +22,8 @@ import android.content.res.Resources;
import android.util.Log;

import java.io.File;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Locale;

/**
@@ -52,8 +52,8 @@ public class DictionaryFactory {
            return new DictionaryCollection(createBinaryDictionary(context, fallbackResId, locale));
        }

        final List<Dictionary> dictList = new LinkedList<Dictionary>();
        final List<AssetFileAddress> assetFileList =
        final LinkedList<Dictionary> dictList = new LinkedList<Dictionary>();
        final ArrayList<AssetFileAddress> assetFileList =
                BinaryDictionaryGetter.getDictionaryFiles(locale, context, fallbackResId);
        if (null != assetFileList) {
            for (final AssetFileAddress f : assetFileList) {
Loading