From 695b543ba9145766374685286c7f71a39953e97d Mon Sep 17 00:00:00 2001 From: goapunk <goapunk@riseup.net> Date: Tue, 29 May 2018 16:07:16 +0200 Subject: [PATCH] fix review --- briar-android/build.gradle | 2 +- .../briar/android/BriarApplicationImpl.java | 6 +++++- .../org/briarproject/briar/android/Localizer.java | 12 ++++++------ .../briar/android/TestBriarApplication.java | 5 ++++- 4 files changed, 16 insertions(+), 9 deletions(-) diff --git a/briar-android/build.gradle b/briar-android/build.gradle index 2a5d6b97bf..2dd91ee029 100644 --- a/briar-android/build.gradle +++ b/briar-android/build.gradle @@ -295,7 +295,7 @@ task verifyTranslations { def folders = ["default", "en-US"] new File("briar-android/src/main/res").eachDir { dir -> - if (dir.name.startsWith("values-")) { + if (dir.name.startsWith("values-") && !dir.name.endsWith("night")) { folders.add(dir.name.substring(7).replace("-r", "-")) } } diff --git a/briar-android/src/main/java/org/briarproject/briar/android/BriarApplicationImpl.java b/briar-android/src/main/java/org/briarproject/briar/android/BriarApplicationImpl.java index 7b7e358460..a2ff968a7e 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/BriarApplicationImpl.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/BriarApplicationImpl.java @@ -2,10 +2,12 @@ package org.briarproject.briar.android; import android.app.Application; import android.content.Context; +import android.content.SharedPreferences; import android.content.res.Configuration; import android.os.StrictMode; import android.os.StrictMode.ThreadPolicy; import android.os.StrictMode.VmPolicy; +import android.preference.PreferenceManager; import org.acra.ACRA; import org.acra.ReportingInteractionMode; @@ -76,8 +78,10 @@ public class BriarApplicationImpl extends Application @Override protected void attachBaseContext(Context base) { + SharedPreferences prefs = + PreferenceManager.getDefaultSharedPreferences(base); // Loading the language needs to be done here. - Localizer.initialize(base); + Localizer.initialize(prefs); super.attachBaseContext( Localizer.getInstance().setLocale(base)); ACRA.init(this); diff --git a/briar-android/src/main/java/org/briarproject/briar/android/Localizer.java b/briar-android/src/main/java/org/briarproject/briar/android/Localizer.java index c734f13f0e..fbdb7fe84c 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/Localizer.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/Localizer.java @@ -4,14 +4,12 @@ import android.content.Context; import android.content.SharedPreferences; import android.content.res.Configuration; import android.content.res.Resources; -import android.preference.PreferenceManager; import org.briarproject.bramble.api.nullsafety.NotNullByDefault; import java.util.Locale; import javax.annotation.Nullable; -import javax.annotation.ParametersAreNonnullByDefault; import static android.os.Build.VERSION.SDK_INT; import static org.briarproject.briar.android.settings.SettingsFragment.LANGUAGE; @@ -19,20 +17,22 @@ import static org.briarproject.briar.android.settings.SettingsFragment.LANGUAGE; @NotNullByDefault public class Localizer { + // Locking: class + @Nullable private static Localizer INSTANCE; @Nullable private final Locale locale; private final SharedPreferences sharedPreferences; - private Localizer(Context context) { - sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context); + private Localizer(SharedPreferences prefs) { + this.sharedPreferences = prefs; locale = getLocaleFromTag( sharedPreferences.getString(LANGUAGE, "default")); } - public static synchronized void initialize(Context context) { + public static synchronized void initialize(SharedPreferences prefs) { if (INSTANCE == null) - INSTANCE = new Localizer(context); + INSTANCE = new Localizer(prefs); } public static synchronized Localizer getInstance() { diff --git a/briar-android/src/test/java/org/briarproject/briar/android/TestBriarApplication.java b/briar-android/src/test/java/org/briarproject/briar/android/TestBriarApplication.java index 93433123b2..ae086abf33 100644 --- a/briar-android/src/test/java/org/briarproject/briar/android/TestBriarApplication.java +++ b/briar-android/src/test/java/org/briarproject/briar/android/TestBriarApplication.java @@ -1,6 +1,8 @@ package org.briarproject.briar.android; import android.app.Application; +import android.content.SharedPreferences; +import android.preference.PreferenceManager; import org.briarproject.bramble.BrambleCoreModule; import org.briarproject.briar.BriarCoreModule; @@ -27,7 +29,8 @@ public class TestBriarApplication extends Application super.onCreate(); LOG.info("Created"); - Localizer.initialize(this); + SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); + Localizer.initialize(prefs); applicationComponent = DaggerAndroidComponent.builder() .appModule(new AppModule(this)) .build(); -- GitLab