Loading services/core/java/com/android/server/inputmethod/InputMethodUtils.java +6 −2 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.content.pm.PackageManagerInternal; import android.content.pm.ResolveInfo; import android.content.res.Resources; import android.os.Build; import android.os.LocaleList; import android.os.UserHandle; import android.provider.Settings; import android.text.TextUtils; Loading Loading @@ -397,7 +398,8 @@ final class InputMethodUtils { List<InputMethodSubtype> enabledSubtypes = getEnabledInputMethodSubtypeListLocked(imi); if (allowsImplicitlyEnabledSubtypes && enabledSubtypes.isEmpty()) { enabledSubtypes = SubtypeUtils.getImplicitlyApplicableSubtypesLocked(mRes, imi); enabledSubtypes = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( mRes.getConfiguration().getLocales(), imi); } return InputMethodSubtype.sort(imi, enabledSubtypes); } Loading Loading @@ -646,6 +648,7 @@ final class InputMethodUtils { private String getEnabledSubtypeHashCodeForInputMethodAndSubtypeLocked(List<Pair<String, ArrayList<String>>> enabledImes, String imeId, String subtypeHashCode) { final LocaleList localeList = mRes.getConfiguration().getLocales(); for (Pair<String, ArrayList<String>> enabledIme: enabledImes) { if (enabledIme.first.equals(imeId)) { final ArrayList<String> explicitlyEnabledSubtypes = enabledIme.second; Loading @@ -657,7 +660,8 @@ final class InputMethodUtils { // are enabled implicitly, so needs to treat them to be enabled. if (imi != null && imi.getSubtypeCount() > 0) { List<InputMethodSubtype> implicitlyEnabledSubtypes = SubtypeUtils.getImplicitlyApplicableSubtypesLocked(mRes, imi); SubtypeUtils.getImplicitlyApplicableSubtypesLocked(localeList, imi); final int numSubtypes = implicitlyEnabledSubtypes.size(); for (int i = 0; i < numSubtypes; ++i) { final InputMethodSubtype st = implicitlyEnabledSubtypes.get(i); Loading services/core/java/com/android/server/inputmethod/SubtypeUtils.java +3 −7 Original line number Diff line number Diff line Loading @@ -18,7 +18,6 @@ package com.android.server.inputmethod; import android.annotation.NonNull; import android.annotation.Nullable; import android.content.res.Resources; import android.os.LocaleList; import android.text.TextUtils; import android.util.ArrayMap; Loading Loading @@ -125,9 +124,7 @@ final class SubtypeUtils { @VisibleForTesting @NonNull static ArrayList<InputMethodSubtype> getImplicitlyApplicableSubtypesLocked( Resources res, InputMethodInfo imi) { final LocaleList systemLocales = res.getConfiguration().getLocales(); @NonNull LocaleList systemLocales, InputMethodInfo imi) { synchronized (sCacheLock) { // We intentionally do not use InputMethodInfo#equals(InputMethodInfo) here because // it does not check if subtypes are also identical. Loading @@ -140,7 +137,7 @@ final class SubtypeUtils { // TODO: Refactor getImplicitlyApplicableSubtypesLockedImpl() so that it can receive // LocaleList rather than Resource. final ArrayList<InputMethodSubtype> result = getImplicitlyApplicableSubtypesLockedImpl(res, imi); getImplicitlyApplicableSubtypesLockedImpl(systemLocales, imi); synchronized (sCacheLock) { // Both LocaleList and InputMethodInfo are immutable. No need to copy them here. sCachedSystemLocales = systemLocales; Loading @@ -151,9 +148,8 @@ final class SubtypeUtils { } private static ArrayList<InputMethodSubtype> getImplicitlyApplicableSubtypesLockedImpl( Resources res, InputMethodInfo imi) { @NonNull LocaleList systemLocales, InputMethodInfo imi) { final List<InputMethodSubtype> subtypes = getSubtypes(imi); final LocaleList systemLocales = res.getConfiguration().getLocales(); final String systemLocale = systemLocales.get(0).toString(); if (TextUtils.isEmpty(systemLocale)) return new ArrayList<>(); final int numSubtypes = subtypes.size(); Loading services/tests/servicestests/src/com/android/server/inputmethod/InputMethodUtilsTest.java +19 −23 Original line number Diff line number Diff line Loading @@ -287,7 +287,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_EN_US), imi); new LocaleList(LOCALE_EN_US), imi); assertEquals(1, result.size()); verifyEquality(autoSubtype, result.get(0)); } Loading @@ -311,7 +311,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_EN_US), imi); new LocaleList(LOCALE_EN_US), imi); assertEquals(2, result.size()); verifyEquality(nonAutoEnUS, result.get(0)); verifyEquality(nonAutoHandwritingEn, result.get(1)); Loading @@ -335,7 +335,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_EN_GB), imi); new LocaleList(LOCALE_EN_GB), imi); assertEquals(2, result.size()); verifyEquality(nonAutoEnGB, result.get(0)); verifyEquality(nonAutoHandwritingEn, result.get(1)); Loading @@ -360,7 +360,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FR), imi); new LocaleList(LOCALE_FR), imi); assertEquals(2, result.size()); verifyEquality(nonAutoFrCA, result.get(0)); verifyEquality(nonAutoHandwritingFr, result.get(1)); Loading @@ -381,7 +381,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FR_CA), imi); new LocaleList(LOCALE_FR_CA), imi); assertEquals(2, result.size()); verifyEquality(nonAutoFrCA, result.get(0)); verifyEquality(nonAutoHandwritingFr, result.get(1)); Loading @@ -403,7 +403,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_JA_JP), imi); new LocaleList(LOCALE_JA_JP), imi); assertEquals(3, result.size()); verifyEquality(nonAutoJa, result.get(0)); verifyEquality(nonAutoEnabledWhenDefaultIsNotAsciiCalableSubtype, result.get(1)); Loading @@ -425,7 +425,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_JA_JP), imi); new LocaleList(LOCALE_JA_JP), imi); assertEquals(1, result.size()); verifyEquality(nonAutoHi, result.get(0)); } Loading @@ -442,7 +442,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_JA_JP), imi); new LocaleList(LOCALE_JA_JP), imi); assertEquals(1, result.size()); verifyEquality(nonAutoEnUS, result.get(0)); } Loading @@ -459,7 +459,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_JA_JP), imi); new LocaleList(LOCALE_JA_JP), imi); assertEquals(1, result.size()); verifyEquality(nonAutoEnUS, result.get(0)); } Loading @@ -481,7 +481,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(Locale.forLanguageTag("sr-Latn-RS")), imi); new LocaleList(Locale.forLanguageTag("sr-Latn-RS")), imi); assertEquals(2, result.size()); assertThat(nonAutoSrLatn, is(in(result))); assertThat(nonAutoHandwritingSrLatn, is(in(result))); Loading @@ -501,7 +501,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(Locale.forLanguageTag("sr-Cyrl-RS")), imi); new LocaleList(Locale.forLanguageTag("sr-Cyrl-RS")), imi); assertEquals(2, result.size()); assertThat(nonAutoSrCyrl, is(in(result))); assertThat(nonAutoHandwritingSrCyrl, is(in(result))); Loading @@ -527,7 +527,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales( new LocaleList( Locale.forLanguageTag("sr-Latn-RS-x-android"), Locale.forLanguageTag("ja-JP"), Locale.forLanguageTag("fr-FR"), Loading @@ -554,7 +554,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FIL_PH), imi); new LocaleList(LOCALE_FIL_PH), imi); assertEquals(1, result.size()); verifyEquality(nonAutoFil, result.get(0)); } Loading @@ -572,7 +572,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FI), imi); new LocaleList(LOCALE_FI), imi); assertEquals(1, result.size()); verifyEquality(nonAutoJa, result.get(0)); } Loading @@ -588,7 +588,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_IN), imi); new LocaleList(LOCALE_IN), imi); assertEquals(1, result.size()); verifyEquality(nonAutoIn, result.get(0)); } Loading @@ -602,7 +602,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_ID), imi); new LocaleList(LOCALE_ID), imi); assertEquals(1, result.size()); verifyEquality(nonAutoIn, result.get(0)); } Loading @@ -616,7 +616,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_IN), imi); new LocaleList(LOCALE_IN), imi); assertEquals(1, result.size()); verifyEquality(nonAutoId, result.get(0)); } Loading @@ -630,7 +630,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_ID), imi); new LocaleList(LOCALE_ID), imi); assertEquals(1, result.size()); verifyEquality(nonAutoId, result.get(0)); } Loading @@ -652,7 +652,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FR, LOCALE_EN_US, LOCALE_JA_JP), imi); new LocaleList(LOCALE_FR, LOCALE_EN_US, LOCALE_JA_JP), imi); assertThat(nonAutoFrCA, is(in(result))); assertThat(nonAutoEnUS, is(in(result))); assertThat(nonAutoJa, is(in(result))); Loading Loading @@ -940,10 +940,6 @@ public class InputMethodUtilsTest { .createConfigurationContext(resourceConfiguration); } private Resources getResourcesForLocales(Locale... locales) { return createTargetContextWithLocales(new LocaleList(locales)).getResources(); } private String[] getPackageNames(final ArrayList<InputMethodInfo> imis) { final String[] packageNames = new String[imis.size()]; for (int i = 0; i < imis.size(); ++i) { Loading Loading
services/core/java/com/android/server/inputmethod/InputMethodUtils.java +6 −2 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.content.pm.PackageManagerInternal; import android.content.pm.ResolveInfo; import android.content.res.Resources; import android.os.Build; import android.os.LocaleList; import android.os.UserHandle; import android.provider.Settings; import android.text.TextUtils; Loading Loading @@ -397,7 +398,8 @@ final class InputMethodUtils { List<InputMethodSubtype> enabledSubtypes = getEnabledInputMethodSubtypeListLocked(imi); if (allowsImplicitlyEnabledSubtypes && enabledSubtypes.isEmpty()) { enabledSubtypes = SubtypeUtils.getImplicitlyApplicableSubtypesLocked(mRes, imi); enabledSubtypes = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( mRes.getConfiguration().getLocales(), imi); } return InputMethodSubtype.sort(imi, enabledSubtypes); } Loading Loading @@ -646,6 +648,7 @@ final class InputMethodUtils { private String getEnabledSubtypeHashCodeForInputMethodAndSubtypeLocked(List<Pair<String, ArrayList<String>>> enabledImes, String imeId, String subtypeHashCode) { final LocaleList localeList = mRes.getConfiguration().getLocales(); for (Pair<String, ArrayList<String>> enabledIme: enabledImes) { if (enabledIme.first.equals(imeId)) { final ArrayList<String> explicitlyEnabledSubtypes = enabledIme.second; Loading @@ -657,7 +660,8 @@ final class InputMethodUtils { // are enabled implicitly, so needs to treat them to be enabled. if (imi != null && imi.getSubtypeCount() > 0) { List<InputMethodSubtype> implicitlyEnabledSubtypes = SubtypeUtils.getImplicitlyApplicableSubtypesLocked(mRes, imi); SubtypeUtils.getImplicitlyApplicableSubtypesLocked(localeList, imi); final int numSubtypes = implicitlyEnabledSubtypes.size(); for (int i = 0; i < numSubtypes; ++i) { final InputMethodSubtype st = implicitlyEnabledSubtypes.get(i); Loading
services/core/java/com/android/server/inputmethod/SubtypeUtils.java +3 −7 Original line number Diff line number Diff line Loading @@ -18,7 +18,6 @@ package com.android.server.inputmethod; import android.annotation.NonNull; import android.annotation.Nullable; import android.content.res.Resources; import android.os.LocaleList; import android.text.TextUtils; import android.util.ArrayMap; Loading Loading @@ -125,9 +124,7 @@ final class SubtypeUtils { @VisibleForTesting @NonNull static ArrayList<InputMethodSubtype> getImplicitlyApplicableSubtypesLocked( Resources res, InputMethodInfo imi) { final LocaleList systemLocales = res.getConfiguration().getLocales(); @NonNull LocaleList systemLocales, InputMethodInfo imi) { synchronized (sCacheLock) { // We intentionally do not use InputMethodInfo#equals(InputMethodInfo) here because // it does not check if subtypes are also identical. Loading @@ -140,7 +137,7 @@ final class SubtypeUtils { // TODO: Refactor getImplicitlyApplicableSubtypesLockedImpl() so that it can receive // LocaleList rather than Resource. final ArrayList<InputMethodSubtype> result = getImplicitlyApplicableSubtypesLockedImpl(res, imi); getImplicitlyApplicableSubtypesLockedImpl(systemLocales, imi); synchronized (sCacheLock) { // Both LocaleList and InputMethodInfo are immutable. No need to copy them here. sCachedSystemLocales = systemLocales; Loading @@ -151,9 +148,8 @@ final class SubtypeUtils { } private static ArrayList<InputMethodSubtype> getImplicitlyApplicableSubtypesLockedImpl( Resources res, InputMethodInfo imi) { @NonNull LocaleList systemLocales, InputMethodInfo imi) { final List<InputMethodSubtype> subtypes = getSubtypes(imi); final LocaleList systemLocales = res.getConfiguration().getLocales(); final String systemLocale = systemLocales.get(0).toString(); if (TextUtils.isEmpty(systemLocale)) return new ArrayList<>(); final int numSubtypes = subtypes.size(); Loading
services/tests/servicestests/src/com/android/server/inputmethod/InputMethodUtilsTest.java +19 −23 Original line number Diff line number Diff line Loading @@ -287,7 +287,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_EN_US), imi); new LocaleList(LOCALE_EN_US), imi); assertEquals(1, result.size()); verifyEquality(autoSubtype, result.get(0)); } Loading @@ -311,7 +311,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_EN_US), imi); new LocaleList(LOCALE_EN_US), imi); assertEquals(2, result.size()); verifyEquality(nonAutoEnUS, result.get(0)); verifyEquality(nonAutoHandwritingEn, result.get(1)); Loading @@ -335,7 +335,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_EN_GB), imi); new LocaleList(LOCALE_EN_GB), imi); assertEquals(2, result.size()); verifyEquality(nonAutoEnGB, result.get(0)); verifyEquality(nonAutoHandwritingEn, result.get(1)); Loading @@ -360,7 +360,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FR), imi); new LocaleList(LOCALE_FR), imi); assertEquals(2, result.size()); verifyEquality(nonAutoFrCA, result.get(0)); verifyEquality(nonAutoHandwritingFr, result.get(1)); Loading @@ -381,7 +381,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FR_CA), imi); new LocaleList(LOCALE_FR_CA), imi); assertEquals(2, result.size()); verifyEquality(nonAutoFrCA, result.get(0)); verifyEquality(nonAutoHandwritingFr, result.get(1)); Loading @@ -403,7 +403,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_JA_JP), imi); new LocaleList(LOCALE_JA_JP), imi); assertEquals(3, result.size()); verifyEquality(nonAutoJa, result.get(0)); verifyEquality(nonAutoEnabledWhenDefaultIsNotAsciiCalableSubtype, result.get(1)); Loading @@ -425,7 +425,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_JA_JP), imi); new LocaleList(LOCALE_JA_JP), imi); assertEquals(1, result.size()); verifyEquality(nonAutoHi, result.get(0)); } Loading @@ -442,7 +442,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_JA_JP), imi); new LocaleList(LOCALE_JA_JP), imi); assertEquals(1, result.size()); verifyEquality(nonAutoEnUS, result.get(0)); } Loading @@ -459,7 +459,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_JA_JP), imi); new LocaleList(LOCALE_JA_JP), imi); assertEquals(1, result.size()); verifyEquality(nonAutoEnUS, result.get(0)); } Loading @@ -481,7 +481,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(Locale.forLanguageTag("sr-Latn-RS")), imi); new LocaleList(Locale.forLanguageTag("sr-Latn-RS")), imi); assertEquals(2, result.size()); assertThat(nonAutoSrLatn, is(in(result))); assertThat(nonAutoHandwritingSrLatn, is(in(result))); Loading @@ -501,7 +501,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(Locale.forLanguageTag("sr-Cyrl-RS")), imi); new LocaleList(Locale.forLanguageTag("sr-Cyrl-RS")), imi); assertEquals(2, result.size()); assertThat(nonAutoSrCyrl, is(in(result))); assertThat(nonAutoHandwritingSrCyrl, is(in(result))); Loading @@ -527,7 +527,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales( new LocaleList( Locale.forLanguageTag("sr-Latn-RS-x-android"), Locale.forLanguageTag("ja-JP"), Locale.forLanguageTag("fr-FR"), Loading @@ -554,7 +554,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FIL_PH), imi); new LocaleList(LOCALE_FIL_PH), imi); assertEquals(1, result.size()); verifyEquality(nonAutoFil, result.get(0)); } Loading @@ -572,7 +572,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FI), imi); new LocaleList(LOCALE_FI), imi); assertEquals(1, result.size()); verifyEquality(nonAutoJa, result.get(0)); } Loading @@ -588,7 +588,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_IN), imi); new LocaleList(LOCALE_IN), imi); assertEquals(1, result.size()); verifyEquality(nonAutoIn, result.get(0)); } Loading @@ -602,7 +602,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_ID), imi); new LocaleList(LOCALE_ID), imi); assertEquals(1, result.size()); verifyEquality(nonAutoIn, result.get(0)); } Loading @@ -616,7 +616,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_IN), imi); new LocaleList(LOCALE_IN), imi); assertEquals(1, result.size()); verifyEquality(nonAutoId, result.get(0)); } Loading @@ -630,7 +630,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_ID), imi); new LocaleList(LOCALE_ID), imi); assertEquals(1, result.size()); verifyEquality(nonAutoId, result.get(0)); } Loading @@ -652,7 +652,7 @@ public class InputMethodUtilsTest { subtypes); final ArrayList<InputMethodSubtype> result = SubtypeUtils.getImplicitlyApplicableSubtypesLocked( getResourcesForLocales(LOCALE_FR, LOCALE_EN_US, LOCALE_JA_JP), imi); new LocaleList(LOCALE_FR, LOCALE_EN_US, LOCALE_JA_JP), imi); assertThat(nonAutoFrCA, is(in(result))); assertThat(nonAutoEnUS, is(in(result))); assertThat(nonAutoJa, is(in(result))); Loading Loading @@ -940,10 +940,6 @@ public class InputMethodUtilsTest { .createConfigurationContext(resourceConfiguration); } private Resources getResourcesForLocales(Locale... locales) { return createTargetContextWithLocales(new LocaleList(locales)).getResources(); } private String[] getPackageNames(final ArrayList<InputMethodInfo> imis) { final String[] packageNames = new String[imis.size()]; for (int i = 0; i < imis.size(); ++i) { Loading