Move some static methods from SubtypeSwitcher to Utils
Change-Id: I3ea8ffcdefcefaa82ae76a31bb65977009d8a040
This commit is contained in:
parent
f77009ac3a
commit
57f05f4412
5 changed files with 36 additions and 36 deletions
|
@ -21,7 +21,6 @@ import com.android.inputmethod.latin.DictionaryFactory;
|
||||||
import com.android.inputmethod.latin.R;
|
import com.android.inputmethod.latin.R;
|
||||||
import com.android.inputmethod.latin.Settings;
|
import com.android.inputmethod.latin.Settings;
|
||||||
import com.android.inputmethod.latin.SharedPreferencesCompat;
|
import com.android.inputmethod.latin.SharedPreferencesCompat;
|
||||||
import com.android.inputmethod.latin.SubtypeSwitcher;
|
|
||||||
import com.android.inputmethod.latin.Utils;
|
import com.android.inputmethod.latin.Utils;
|
||||||
|
|
||||||
import org.xmlpull.v1.XmlPullParserException;
|
import org.xmlpull.v1.XmlPullParserException;
|
||||||
|
@ -237,12 +236,12 @@ public class InputLanguageSelection extends PreferenceActivity {
|
||||||
|
|
||||||
if (finalSize == 0) {
|
if (finalSize == 0) {
|
||||||
preprocess[finalSize++] =
|
preprocess[finalSize++] =
|
||||||
new LocaleEntry(SubtypeSwitcher.getFullDisplayName(l, false), l);
|
new LocaleEntry(Utils.getFullDisplayName(l, false), l);
|
||||||
} else {
|
} else {
|
||||||
if (s.equals("zz_ZZ")) {
|
if (s.equals("zz_ZZ")) {
|
||||||
// ignore this locale
|
// ignore this locale
|
||||||
} else {
|
} else {
|
||||||
final String displayName = SubtypeSwitcher.getFullDisplayName(l, false);
|
final String displayName = Utils.getFullDisplayName(l, false);
|
||||||
preprocess[finalSize++] = new LocaleEntry(displayName, l);
|
preprocess[finalSize++] = new LocaleEntry(displayName, l);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,6 +18,7 @@ package com.android.inputmethod.deprecated.voice;
|
||||||
|
|
||||||
import com.android.inputmethod.latin.R;
|
import com.android.inputmethod.latin.R;
|
||||||
import com.android.inputmethod.latin.SubtypeSwitcher;
|
import com.android.inputmethod.latin.SubtypeSwitcher;
|
||||||
|
import com.android.inputmethod.latin.Utils;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.res.Resources;
|
import android.content.res.Resources;
|
||||||
|
@ -221,7 +222,7 @@ public class RecognitionView {
|
||||||
Locale locale = SubtypeSwitcher.getInstance().getInputLocale();
|
Locale locale = SubtypeSwitcher.getInstance().getInputLocale();
|
||||||
|
|
||||||
mLanguage.setVisibility(View.VISIBLE);
|
mLanguage.setVisibility(View.VISIBLE);
|
||||||
mLanguage.setText(SubtypeSwitcher.getFullDisplayName(locale, true));
|
mLanguage.setText(Utils.getFullDisplayName(locale, true));
|
||||||
|
|
||||||
mPopupLayout.setBackgroundDrawable(mListeningBorder);
|
mPopupLayout.setBackgroundDrawable(mListeningBorder);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -216,7 +216,7 @@ public class LatinKeyboard extends Keyboard {
|
||||||
final Rect bounds = new Rect();
|
final Rect bounds = new Rect();
|
||||||
|
|
||||||
// Estimate appropriate language name text size to fit in maxTextWidth.
|
// Estimate appropriate language name text size to fit in maxTextWidth.
|
||||||
String language = SubtypeSwitcher.getFullDisplayName(locale, true);
|
String language = Utils.getFullDisplayName(locale, true);
|
||||||
int textWidth = getTextWidth(paint, language, origTextSize, bounds);
|
int textWidth = getTextWidth(paint, language, origTextSize, bounds);
|
||||||
// Assuming text width and text size are proportional to each other.
|
// Assuming text width and text size are proportional to each other.
|
||||||
float textSize = origTextSize * Math.min(width / textWidth, 1.0f);
|
float textSize = origTextSize * Math.min(width / textWidth, 1.0f);
|
||||||
|
@ -228,7 +228,7 @@ public class LatinKeyboard extends Keyboard {
|
||||||
|
|
||||||
final boolean useShortName;
|
final boolean useShortName;
|
||||||
if (useMiddleName) {
|
if (useMiddleName) {
|
||||||
language = SubtypeSwitcher.getMiddleDisplayLanguage(locale);
|
language = Utils.getMiddleDisplayLanguage(locale);
|
||||||
textWidth = getTextWidth(paint, language, origTextSize, bounds);
|
textWidth = getTextWidth(paint, language, origTextSize, bounds);
|
||||||
textSize = origTextSize * Math.min(width / textWidth, 1.0f);
|
textSize = origTextSize * Math.min(width / textWidth, 1.0f);
|
||||||
useShortName = (textSize / origTextSize < MINIMUM_SCALE_OF_LANGUAGE_NAME)
|
useShortName = (textSize / origTextSize < MINIMUM_SCALE_OF_LANGUAGE_NAME)
|
||||||
|
@ -238,7 +238,7 @@ public class LatinKeyboard extends Keyboard {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (useShortName) {
|
if (useShortName) {
|
||||||
language = SubtypeSwitcher.getShortDisplayLanguage(locale);
|
language = Utils.getShortDisplayLanguage(locale);
|
||||||
textWidth = getTextWidth(paint, language, origTextSize, bounds);
|
textWidth = getTextWidth(paint, language, origTextSize, bounds);
|
||||||
textSize = origTextSize * Math.min(width / textWidth, 1.0f);
|
textSize = origTextSize * Math.min(width / textWidth, 1.0f);
|
||||||
}
|
}
|
||||||
|
|
|
@ -492,36 +492,8 @@ public class SubtypeSwitcher {
|
||||||
KeyboardSwitcher.getInstance().getKeyboardView().getWindowToken());
|
KeyboardSwitcher.getInstance().getKeyboardView().getWindowToken());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getFullDisplayName(Locale locale, boolean returnsNameInThisLocale) {
|
|
||||||
if (returnsNameInThisLocale) {
|
|
||||||
return toTitleCase(SubtypeLocale.getFullDisplayName(locale), locale);
|
|
||||||
} else {
|
|
||||||
return toTitleCase(locale.getDisplayName(), locale);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String getDisplayLanguage(Locale locale) {
|
|
||||||
return toTitleCase(SubtypeLocale.getFullDisplayName(locale), locale);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String getMiddleDisplayLanguage(Locale locale) {
|
|
||||||
return toTitleCase((Utils.constructLocaleFromString(
|
|
||||||
locale.getLanguage()).getDisplayLanguage(locale)), locale);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static String getShortDisplayLanguage(Locale locale) {
|
|
||||||
return toTitleCase(locale.getLanguage(), locale);
|
|
||||||
}
|
|
||||||
|
|
||||||
private static String toTitleCase(String s, Locale locale) {
|
|
||||||
if (s.length() == 0) {
|
|
||||||
return s;
|
|
||||||
}
|
|
||||||
return s.toUpperCase(locale).charAt(0) + s.substring(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
public String getInputLanguageName() {
|
public String getInputLanguageName() {
|
||||||
return getDisplayLanguage(getInputLocale());
|
return Utils.getDisplayLanguage(getInputLocale());
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////
|
/////////////////////////////
|
||||||
|
|
|
@ -769,4 +769,32 @@ public class Utils {
|
||||||
StringBuilderPool.recycle((StringBuilder)garbage);
|
StringBuilderPool.recycle((StringBuilder)garbage);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static String getFullDisplayName(Locale locale, boolean returnsNameInThisLocale) {
|
||||||
|
if (returnsNameInThisLocale) {
|
||||||
|
return toTitleCase(SubtypeLocale.getFullDisplayName(locale), locale);
|
||||||
|
} else {
|
||||||
|
return toTitleCase(locale.getDisplayName(), locale);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getDisplayLanguage(Locale locale) {
|
||||||
|
return toTitleCase(SubtypeLocale.getFullDisplayName(locale), locale);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getMiddleDisplayLanguage(Locale locale) {
|
||||||
|
return toTitleCase((constructLocaleFromString(
|
||||||
|
locale.getLanguage()).getDisplayLanguage(locale)), locale);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getShortDisplayLanguage(Locale locale) {
|
||||||
|
return toTitleCase(locale.getLanguage(), locale);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String toTitleCase(String s, Locale locale) {
|
||||||
|
if (s.length() <= 1) {
|
||||||
|
return s;
|
||||||
|
}
|
||||||
|
return s.toUpperCase(locale).charAt(0) + s.substring(1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue