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

Commit a6872ae0 authored by Robert Greenwalt's avatar Robert Greenwalt Committed by The Android Open Source Project
Browse files

AI 146502: am: CL 145995 am: CL 145993 Fix Phone-oriented default-locale selection.

  When several locales for a given language are available we were always
  selecting the first.
  Original author: rgreenwalt
  Merged from: //branches/cupcake/...
  Original author: android-build

Automated import of CL 146502
parent d3d78172
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -491,7 +491,7 @@ public abstract class PhoneBase implements Phone {
            return; // no match possible
        }
        language.toLowerCase();
        if (null != country) {
        if (null == country) {
            country = "";
        }
        country = country.toUpperCase();
@@ -505,10 +505,11 @@ public abstract class PhoneBase implements Phone {
                for(int i = 0; i < N; i++) {
                    if (locales[i]!=null && locales[i].length() >= 2 &&
                            locales[i].substring(0,2).equals(language)) {
                        if (locales[i].length() >= 5 &&
                                locales[i].substring(3,5).equals(country)) {
                        if (locales[i].length() >= 5) {
                            if (locales[i].substring(3,5).equals(country)) {
                                bestMatch = locales[i];
                                break;
                            }
                        } else if (null == bestMatch) {
                            bestMatch = locales[i];
                        }
@@ -517,7 +518,6 @@ public abstract class PhoneBase implements Phone {
                if (null != bestMatch) {
                    IActivityManager am = ActivityManagerNative.getDefault();
                    Configuration config = am.getConfiguration();

                    if (bestMatch.length() >= 5) {
                        config.locale = new Locale(bestMatch.substring(0,2),
                                                   bestMatch.substring(3,5));