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

Commit 9bc0e394 authored by Roozbeh Pournader's avatar Roozbeh Pournader
Browse files

Make English the default language for Indian SIMs

Previously, Hindi would be reported by ICU's addLikelySubtags(), but
English is a better default for India.

Bug: 29627436
Change-Id: I168f05c4c0377ea49bd9eb8591c6dddac16d5605
parent ec15d7bd
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -124,10 +124,17 @@ public final class MccTable {
            return null;
        }

        final String country = entry.mIso;

        // Choose English as the default language for India.
        if ("in".equals(country)) {
            return "en";
        }

        // Ask CLDR for the language this country uses...
        Locale likelyLocale = ICU.addLikelySubtags(new Locale("und", entry.mIso));
        Locale likelyLocale = ICU.addLikelySubtags(new Locale("und", country));
        String likelyLanguage = likelyLocale.getLanguage();
        Slog.d(LOG_TAG, "defaultLanguageForMcc(" + mcc + "): country " + entry.mIso + " uses " +
        Slog.d(LOG_TAG, "defaultLanguageForMcc(" + mcc + "): country " + country + " uses " +
               likelyLanguage);
        return likelyLanguage;
    }
+7 −0
Original line number Diff line number Diff line
@@ -62,6 +62,13 @@ public class MccTableTest extends AndroidTestCase {
        assertEquals(MccTable.defaultLanguageForMcc(2000), null); // mcc not defined, hence default
    }

    @SmallTest
    public void testLang_India() throws Exception {
        assertEquals(MccTable.defaultLanguageForMcc(404), "en");
        assertEquals(MccTable.defaultLanguageForMcc(405), "en");
        assertEquals(MccTable.defaultLanguageForMcc(406), "en");
    }

    @SmallTest
    public void testSmDigits() throws Exception {
        assertEquals(MccTable.smallestDigitsMccForMnc(312), 3);