From 87c35b037e918794531ebe4f7ab06dfaabeed646 Mon Sep 17 00:00:00 2001 From: Stanislav Dmitrenko <7953703+avently@users.noreply.github.com> Date: Thu, 20 Jul 2023 16:13:59 +0300 Subject: [PATCH] android: maybe fixes lang changer in some situations (#2739) --- .../android/src/main/java/chat/simplex/app/MainActivity.kt | 2 +- .../src/main/java/chat/simplex/app/views/helpers/Util.kt | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/apps/multiplatform/android/src/main/java/chat/simplex/app/MainActivity.kt b/apps/multiplatform/android/src/main/java/chat/simplex/app/MainActivity.kt index ceee0c175f..090cb3b217 100644 --- a/apps/multiplatform/android/src/main/java/chat/simplex/app/MainActivity.kt +++ b/apps/multiplatform/android/src/main/java/chat/simplex/app/MainActivity.kt @@ -66,11 +66,11 @@ class MainActivity: FragmentActivity() { private val destroyedAfterBackPress = mutableStateOf(false) override fun onCreate(savedInstanceState: Bundle?) { + applyAppLocale(ChatModel.controller.appPrefs.appLanguage) super.onCreate(savedInstanceState) SimplexApp.context.mainActivity = WeakReference(this) // testJson() val m = vm.chatModel - applyAppLocale(m.controller.appPrefs.appLanguage) // When call ended and orientation changes, it re-process old intent, it's unneeded. // Only needed to be processed on first creation of activity if (savedInstanceState == null) { diff --git a/apps/multiplatform/android/src/main/java/chat/simplex/app/views/helpers/Util.kt b/apps/multiplatform/android/src/main/java/chat/simplex/app/views/helpers/Util.kt index a61729a5cb..3e9926b17b 100644 --- a/apps/multiplatform/android/src/main/java/chat/simplex/app/views/helpers/Util.kt +++ b/apps/multiplatform/android/src/main/java/chat/simplex/app/views/helpers/Util.kt @@ -626,8 +626,7 @@ fun saveAppLocale(pref: SharedPreference, activity: Activity, languageC fun Activity.applyAppLocale(pref: SharedPreference) { // if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { - val lang = pref.get() - if (lang == null || lang == Locale.getDefault().language) return + val lang = pref.get() ?: return applyLocale(Locale.forLanguageTag(lang)) // } }