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

Commit 1ab40927 authored by Amith Yamasani's avatar Amith Yamasani Committed by Android (Google) Code Review
Browse files

Merge "Remove popup for extension keyboard in landscape. bug: 2519903"

parents b248c2f7 1e5374e9
Loading
Loading
Loading
Loading
+25 −1
Original line number Diff line number Diff line
@@ -23,6 +23,8 @@ import java.util.Locale;

import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.PreferenceActivity;
@@ -35,7 +37,7 @@ public class InputLanguageSelection extends PreferenceActivity {
    private String mSelectedLanguages;
    private ArrayList<Loc> mAvailableLanguages = new ArrayList<Loc>();
    private static final String[] BLACKLIST_LANGUAGES = {
        "ko", "ja", "zh"
        "ko", "ja", "zh", "el"
    };

    private static class Loc implements Comparable {
@@ -75,6 +77,9 @@ public class InputLanguageSelection extends PreferenceActivity {
            pref.setTitle(LanguageSwitcher.toTitleCase(locale.getDisplayName(locale)));
            boolean checked = isLocaleIn(locale, languageList);
            pref.setChecked(checked);
            if (hasDictionary(locale)) {
                pref.setSummary(R.string.has_dictionary);
            }
            parent.addPreference(pref);
        }
    }
@@ -92,6 +97,25 @@ public class InputLanguageSelection extends PreferenceActivity {
        return false;
    }

    private boolean hasDictionary(Locale locale) {
        Resources res = getResources();
        Configuration conf = res.getConfiguration();
        Locale saveLocale = conf.locale;
        boolean haveDictionary = false;
        conf.locale = locale;
        res.updateConfiguration(conf, res.getDisplayMetrics());
        BinaryDictionary bd = new BinaryDictionary(this, R.raw.main);
        // Is the dictionary larger than a placeholder? Arbitrarily chose a lower limit of
        // 4000-5000 words, whereas the LARGE_DICTIONARY is about 20000+ words.
        if (bd.getSize() > Suggest.LARGE_DICTIONARY_THRESHOLD / 4) {
            haveDictionary = true;
        }
        bd.close();
        conf.locale = saveLocale;
        res.updateConfiguration(conf, res.getDisplayMetrics());
        return haveDictionary;
    }

    private String get5Code(Locale locale) {
        String country = locale.getCountry();
        return locale.getLanguage()
+5 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.inputmethod.latin;
import java.util.List;

import android.content.Context;
import android.content.res.Configuration;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.inputmethodservice.Keyboard;
@@ -178,6 +179,10 @@ public class LatinKeyboardView extends KeyboardView {
            Keyboard keyboard;
            mExtension.setKeyboard(keyboard = new LatinKeyboard(getContext(),
                    ((LatinKeyboard) getKeyboard()).getExtension()));
            if (getContext().getResources().getConfiguration().orientation
                    == Configuration.ORIENTATION_LANDSCAPE) {
                mExtension.setPreviewEnabled(false);
            }
            mExtensionPopup.setContentView(mExtension);
            mExtensionPopup.setWidth(getWidth());
            mExtensionPopup.setHeight(keyboard.getHeight());
+1 −1
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ public class Suggest implements Dictionary.WordCallback {
    public static final int CORRECTION_BASIC = 1;
    public static final int CORRECTION_FULL = 2;

    private static final int LARGE_DICTIONARY_THRESHOLD = 200 * 1000;
    static final int LARGE_DICTIONARY_THRESHOLD = 200 * 1000;

    private BinaryDictionary mMainDict;