From ce087f3fb9a5ea376e73e3a902e2fa7b1f920534 Mon Sep 17 00:00:00 2001 From: Keoni Mahelona Date: Sun, 9 Jul 2023 15:52:47 +1200 Subject: [PATCH 1/2] add support for language code of 3 characters --- packages/localize/index.android.ts | 6 +++++- packages/localize/index.ios.ts | 9 +++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/packages/localize/index.android.ts b/packages/localize/index.android.ts index b42fb912..85d65201 100644 --- a/packages/localize/index.android.ts +++ b/packages/localize/index.android.ts @@ -41,6 +41,10 @@ export function androidLaunchEventLocalizationHandler() { } export function overrideLocale(locale: string): boolean { - ApplicationSettings.setString('__app__language__', locale.substring(0, 2)); + let language_code = locale.substring(0, 2) + if (locale.indexOf('-') < 0 && locale.length == 3) { + language_code = locale + } + ApplicationSettings.setString('__app__language__', language_code); return true; } diff --git a/packages/localize/index.ios.ts b/packages/localize/index.ios.ts index 2d20a391..4295b4ff 100644 --- a/packages/localize/index.ios.ts +++ b/packages/localize/index.ios.ts @@ -30,7 +30,12 @@ export function androidLaunchEventLocalizationHandler() { } export function overrideLocale(locale: string): boolean { - const path = NSBundle.mainBundle.pathForResourceOfType(locale.substring(0, 2), 'lproj'); + let language_code = locale.substring(0, 2) + if (locale.indexOf('-') < 0 && locale.length == 3) { + language_code = locale + } + + const path = NSBundle.mainBundle.pathForResourceOfType(language_code, 'lproj'); if (!path) { return false; @@ -39,7 +44,7 @@ export function overrideLocale(locale: string): boolean { bundle = NSBundle.bundleWithPath(path); NSUserDefaults.standardUserDefaults.setObjectForKey([locale], 'AppleLanguages'); NSUserDefaults.standardUserDefaults.synchronize(); - ApplicationSettings.setString('__app__language__', locale.substring(0, 2)); + ApplicationSettings.setString('__app__language__', language_code); return true; } From df0b95c3ed3813065c6266cf1ccd3ed8d20a8a22 Mon Sep 17 00:00:00 2001 From: Nathan Walker Date: Tue, 11 Jul 2023 20:38:07 -0700 Subject: [PATCH 2/2] chore: format --- packages/localize/index.android.ts | 4 ++-- packages/localize/index.ios.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/localize/index.android.ts b/packages/localize/index.android.ts index 85d65201..96d55550 100644 --- a/packages/localize/index.android.ts +++ b/packages/localize/index.android.ts @@ -41,9 +41,9 @@ export function androidLaunchEventLocalizationHandler() { } export function overrideLocale(locale: string): boolean { - let language_code = locale.substring(0, 2) + let language_code = locale.substring(0, 2); if (locale.indexOf('-') < 0 && locale.length == 3) { - language_code = locale + language_code = locale; } ApplicationSettings.setString('__app__language__', language_code); return true; diff --git a/packages/localize/index.ios.ts b/packages/localize/index.ios.ts index 4295b4ff..3428c074 100644 --- a/packages/localize/index.ios.ts +++ b/packages/localize/index.ios.ts @@ -30,9 +30,9 @@ export function androidLaunchEventLocalizationHandler() { } export function overrideLocale(locale: string): boolean { - let language_code = locale.substring(0, 2) + let language_code = locale.substring(0, 2); if (locale.indexOf('-') < 0 && locale.length == 3) { - language_code = locale + language_code = locale; } const path = NSBundle.mainBundle.pathForResourceOfType(language_code, 'lproj');