diff --git a/core/java/com/android/internal/app/LocalePicker.java b/core/java/com/android/internal/app/LocalePicker.java index f5c498a8fbc91..229df8f23293d 100644 --- a/core/java/com/android/internal/app/LocalePicker.java +++ b/core/java/com/android/internal/app/LocalePicker.java @@ -36,7 +36,6 @@ import android.widget.ListView; import android.widget.TextView; import java.text.Collator; -import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.Locale; @@ -106,22 +105,21 @@ public class LocalePicker extends ListFragment { return constructAdapter(context, layoutId, fieldId, false /* disable pseudolocales */); } - public static ArrayAdapter constructAdapter(Context context, - final int layoutId, final int fieldId, final boolean isInDeveloperMode) { + public static List getAllAssetLocales(Context context, boolean isInDeveloperMode) { final Resources resources = context.getResources(); - String[] locales = Resources.getSystem().getAssets().getLocales(); + final String[] locales = Resources.getSystem().getAssets().getLocales(); List localeList = new ArrayList(locales.length); Collections.addAll(localeList, locales); if (isInDeveloperMode) { if (!localeList.contains("zz_ZZ")) { localeList.add("zz_ZZ"); } - /** - TODO: Enable when zz_ZY Pseudolocale is complete - * if (!localeList.contains("zz_ZY")) { - * localeList.add("zz_ZY"); - * } - */ + /** - TODO: Enable when zz_ZY Pseudolocale is complete + * if (!localeList.contains("zz_ZY")) { + * localeList.add("zz_ZY"); + * } + */ } Collections.sort(localeList); @@ -179,6 +177,13 @@ public class LocalePicker extends ListFragment { } Collections.sort(localeInfos); + return localeInfos; + } + + public static ArrayAdapter constructAdapter(Context context, + final int layoutId, final int fieldId, final boolean isInDeveloperMode) { + final List localeInfos = getAllAssetLocales(context, isInDeveloperMode); + final LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); return new ArrayAdapter(context, layoutId, fieldId, localeInfos) {