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

Commit d6a8adcb authored by Dan Zivkovic's avatar Dan Zivkovic
Browse files

Cleanup in preparation of distracter change.

Bug 19296201.

Change-Id: If016da2b7f4b3ecb9afd6d7aed9d19fbd4938758
parent 608ef472
Loading
Loading
Loading
Loading
+9 −11
Original line number Diff line number Diff line
@@ -113,24 +113,22 @@ public interface DictionaryFacilitator {

    boolean isConfidentAboutCurrentLanguageBeing(final Locale mLocale);

    void resetDictionaries(final Context context, final Locale[] newLocales,
            final boolean useContactsDict, final boolean usePersonalizedDicts,
            final boolean forceReloadMainDictionary,
            @Nullable final String account,
            final DictionaryInitializationListener listener);

    void resetDictionariesWithDictNamePrefix(final Context context,
    void resetDictionaries(
            final Context context,
            final Locale[] newLocales,
            final boolean useContactsDict,
            final boolean usePersonalizedDicts,
            final boolean forceReloadMainDictionary,
            @Nullable final DictionaryInitializationListener listener,
            @Nullable final String account,
            final String dictNamePrefix,
            @Nullable final String account);
            @Nullable final DictionaryInitializationListener listener);

    @UsedForTesting
    void resetDictionariesForTesting(final Context context, final Locale[] locales,
            final ArrayList<String> dictionaryTypes, final HashMap<String, File> dictionaryFiles,
    void resetDictionariesForTesting(
            final Context context,
            final Locale[] locales,
            final ArrayList<String> dictionaryTypes,
            final HashMap<String, File> dictionaryFiles,
            final Map<String, Map<String, String>> additionalDictAttributes,
            @Nullable final String account);

+4 −13
Original line number Diff line number Diff line
@@ -342,16 +342,6 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
        }
    }

    public void resetDictionaries(final Context context, final Locale[] newLocales,
            final boolean useContactsDict, final boolean usePersonalizedDicts,
            final boolean forceReloadMainDictionary,
            @Nullable final String account,
            final DictionaryInitializationListener listener) {
        resetDictionariesWithDictNamePrefix(context, newLocales, useContactsDict,
                usePersonalizedDicts, forceReloadMainDictionary, listener, "" /* dictNamePrefix */,
                account);
    }

    @Nullable
    static DictionaryGroup findDictionaryGroupWithLocale(final DictionaryGroup[] dictionaryGroups,
            final Locale locale) {
@@ -363,14 +353,15 @@ public class DictionaryFacilitatorImpl implements DictionaryFacilitator {
        return null;
    }

    public void resetDictionariesWithDictNamePrefix(final Context context,
    public void resetDictionaries(
            final Context context,
            final Locale[] newLocales,
            final boolean useContactsDict,
            final boolean usePersonalizedDicts,
            final boolean forceReloadMainDictionary,
            @Nullable final DictionaryInitializationListener listener,
            @Nullable final String account,
            final String dictNamePrefix,
            @Nullable final String account) {
            @Nullable final DictionaryInitializationListener listener) {
        final HashMap<Locale, ArrayList<String>> existingDictionariesToCleanup = new HashMap<>();
        // TODO: Make subDictTypesToUse configurable by resource or a static final list.
        final HashSet<String> subDictTypesToUse = new HashSet<>();
+9 −9
Original line number Diff line number Diff line
@@ -28,10 +28,11 @@ import android.util.LruCache;

/**
 * Cache for dictionary facilitators of multiple locales.
 * This class automatically creates and releases facilitator instances using LRU policy.
 * This class automatically creates and releases up to 3 facilitator instances using LRU policy.
 */
public class DictionaryFacilitatorLruCache {
    static final String TAG = DictionaryFacilitatorLruCache.class.getSimpleName();
    private static final String TAG = "DictionaryFacilitatorLruCache";
    private static final int MAX_DICTIONARY_FACILITATOR_COUNT = 3;
    private static final int WAIT_FOR_LOADING_MAIN_DICT_IN_MILLISECONDS = 1000;
    private static final int MAX_RETRY_COUNT_FOR_WAITING_FOR_LOADING_DICT = 5;

@@ -74,10 +75,10 @@ public class DictionaryFacilitatorLruCache {
    private final Object mLock = new Object();
    private boolean mUseContactsDictionary = false;

    public DictionaryFacilitatorLruCache(final Context context, final int maxSize,
            final String dictionaryNamePrefix) {
    public DictionaryFacilitatorLruCache(final Context context, final String dictionaryNamePrefix) {
        mContext = context;
        mLruCache = new DictionaryFacilitatorLruCacheInner(mCachedLocales, maxSize);
        mLruCache = new DictionaryFacilitatorLruCacheInner(
                mCachedLocales, MAX_DICTIONARY_FACILITATOR_COUNT);
        mDictionaryNamePrefix = dictionaryNamePrefix;
    }

@@ -103,11 +104,10 @@ public class DictionaryFacilitatorLruCache {
    private void resetDictionariesForLocaleLocked(final DictionaryFacilitator dictionaryFacilitator,
            final Locale locale) {
        // Note: Given that personalized dictionaries are not used here; we can pass null account.
        dictionaryFacilitator.resetDictionariesWithDictNamePrefix(mContext, new Locale[] { locale },
        dictionaryFacilitator.resetDictionaries(mContext, new Locale[]{locale},
                mUseContactsDictionary, false /* usePersonalizedDicts */,
                false /* forceReloadMainDictionary */, null /* listener */,
                mDictionaryNamePrefix,
                null /* account */);
                false /* forceReloadMainDictionary */, null /* account */,
                mDictionaryNamePrefix, null /* listener */);
    }

    public void setUseContactsDictionary(final boolean useContectsDictionary) {
+4 −4
Original line number Diff line number Diff line
@@ -679,7 +679,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
        mDictionaryFacilitator.resetDictionaries(this /* context */, locales,
                settingsValues.mUseContactsDict, settingsValues.mUsePersonalizedDicts,
                false /* forceReloadMainDictionary */,
                settingsValues.mAccount,
                settingsValues.mAccount, "" /* dictNamePrefix */,
                this /* DictionaryInitializationListener */);
        if (settingsValues.mAutoCorrectionEnabledPerUserSettings) {
            mInputLogic.mSuggest.setAutoCorrectionThreshold(
@@ -697,7 +697,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
                mDictionaryFacilitator.getLocales(), settingsValues.mUseContactsDict,
                settingsValues.mUsePersonalizedDicts,
                true /* forceReloadMainDictionary */,
                settingsValues.mAccount,
                settingsValues.mAccount, "" /* dictNamePrefix */,
                this /* DictionaryInitializationListener */);
    }

@@ -1810,7 +1810,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
        mDictionaryFacilitator.resetDictionaries(this, new Locale[] { locale },
            settingsValues.mUseContactsDict, settingsValues.mUsePersonalizedDicts,
            false /* forceReloadMainDictionary */,
            settingsValues.mAccount,
            settingsValues.mAccount, "", /* dictionaryNamePrefix */
            this /* DictionaryInitializationListener */);
    }

+0 −3
Original line number Diff line number Diff line
@@ -17,8 +17,6 @@
package com.android.inputmethod.latin.personalization;

import android.content.Context;
import android.content.SharedPreferences;
import android.preference.PreferenceManager;

import com.android.inputmethod.annotations.ExternallyReferenced;
import com.android.inputmethod.annotations.UsedForTesting;
@@ -27,7 +25,6 @@ import com.android.inputmethod.latin.ExpandableBinaryDictionary;
import com.android.inputmethod.latin.NgramContext;
import com.android.inputmethod.latin.common.Constants;
import com.android.inputmethod.latin.define.ProductionFlags;
import com.android.inputmethod.latin.settings.LocalSettingsConstants;
import com.android.inputmethod.latin.utils.DistracterFilter;

import java.io.File;
Loading