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

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

Merge "[ML25] Add an hasDict method."

parents 62ef2105 f13487df
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -18,7 +18,6 @@ package com.android.inputmethod.latin.settings;

import android.content.Context;
import android.content.SharedPreferences;
import android.content.res.Resources;
import android.preference.PreferenceFragment;
import android.view.inputmethod.InputMethodSubtype;

@@ -50,7 +49,7 @@ public class AdditionalFeaturesSettingUtils {
    public static RichInputMethodSubtype createRichInputMethodSubtype(
            @Nonnull final RichInputMethodManager imm,
            @Nonnull final InputMethodSubtype subtype,
            final Resources resources) {
            final Context context) {
        return new RichInputMethodSubtype(subtype);
    }
}
+3 −3
Original line number Diff line number Diff line
@@ -52,7 +52,7 @@ public class RichInputMethodManager {

    private static final RichInputMethodManager sInstance = new RichInputMethodManager();

    private Resources mResources;
    private Context mContext;
    private InputMethodManagerCompatWrapper mImmWrapper;
    private InputMethodInfoCache mInputMethodInfoCache;
    final HashMap<InputMethodInfo, List<InputMethodSubtype>>
@@ -86,7 +86,7 @@ public class RichInputMethodManager {
            return;
        }
        mImmWrapper = new InputMethodManagerCompatWrapper(context);
        mResources = context.getResources();
        mContext = context;
        mInputMethodInfoCache = new InputMethodInfoCache(
                mImmWrapper.mImm, context.getPackageName());

@@ -309,7 +309,7 @@ public class RichInputMethodManager {
    public RichInputMethodSubtype createCurrentRichInputMethodSubtype(
            final InputMethodSubtype rawSubtype) {
        return AdditionalFeaturesSettingUtils.createRichInputMethodSubtype(this, rawSubtype,
                mResources);
                mContext);
    }

    public boolean hasMultipleEnabledIMEsOrSubtypes(final boolean shouldIncludeAuxiliarySubtypes) {
+21 −0
Original line number Diff line number Diff line
@@ -230,6 +230,7 @@ public class DictionaryInfoUtils {

    /**
     * Helper method to return a dictionary res id for a locale, or 0 if none.
     * @param res resources for the app
     * @param locale dictionary locale
     * @return main dictionary resource id
     */
@@ -258,6 +259,7 @@ public class DictionaryInfoUtils {

    /**
     * Returns a main dictionary resource id
     * @param res resources for the app
     * @param locale dictionary locale
     * @return main dictionary resource id
     */
@@ -283,6 +285,25 @@ public class DictionaryInfoUtils {
                BinaryDictionaryGetter.ID_CATEGORY_SEPARATOR + locale.getLanguage().toString();
    }

    /**
     * Returns whether a main dictionary is readily available for this locale.
     *
     * This does not query the content provider.
     *
     * @param context context to open files upon
     * @param locale dictionary locale
     * @return true if a dictionary is available right away, false otherwise
     */
    public static boolean hasReadilyAvailableMainDictionaryForLocale(final Context context,
            final Locale locale) {
        final Resources res = context.getResources();
        if (0 != getMainDictionaryResourceIdIfAvailableForLocale(res, locale)) {
            return true;
        }
        final String fileName = getCacheFileName(getMainDictId(locale), locale.toString(), context);
        return new File(fileName).exists();
    }

    public static DictionaryHeader getDictionaryFileHeaderOrNull(final File file) {
        return getDictionaryFileHeaderOrNull(file, 0, file.length());
    }