diff --git a/android_app/app/src/main/java/com/health/openscale/gui/activities/BaseAppCompatActivity.java b/android_app/app/src/main/java/com/health/openscale/gui/activities/BaseAppCompatActivity.java index bf7dfa00..72250b8a 100644 --- a/android_app/app/src/main/java/com/health/openscale/gui/activities/BaseAppCompatActivity.java +++ b/android_app/app/src/main/java/com/health/openscale/gui/activities/BaseAppCompatActivity.java @@ -32,14 +32,24 @@ public class BaseAppCompatActivity extends AppCompatActivity { public static final String PREFERENCE_APP_THEME = "app_theme"; public static final String PREFERENCE_LANGUAGE = "language"; + private static Locale systemDefaultLocale = null; + public static Context createBaseContext(Context context) { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); String language = prefs.getString(PREFERENCE_LANGUAGE, ""); if (language.isEmpty() || language.equals("default")) { + if (systemDefaultLocale != null) { + Locale.setDefault(systemDefaultLocale); + systemDefaultLocale = null; + } return context; } + if (systemDefaultLocale == null) { + systemDefaultLocale = Locale.getDefault(); + } + Locale locale; String[] localeParts = TextUtils.split(language, "-"); if (localeParts.length == 2) {