From e51eff40503a9715a98f7d1fb41c3a607b8f67d0 Mon Sep 17 00:00:00 2001 From: Thialfihar Date: Thu, 25 Jun 2015 15:17:32 +0200 Subject: Add theme setting This prepares that different themes can be added. Currently light and dark will just use the default OK theme. --- .../sufficientlysecure/keychain/ui/base/BaseActivity.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base') diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/BaseActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/BaseActivity.java index 9529d8689..82f62f933 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/BaseActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/BaseActivity.java @@ -22,6 +22,7 @@ import android.os.Bundle; import android.support.v7.app.ActionBar; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; +import android.view.ContextThemeWrapper; import android.view.Gravity; import android.view.LayoutInflater; import android.view.View; @@ -29,6 +30,7 @@ import android.view.ViewGroup; import android.widget.TextView; import org.sufficientlysecure.keychain.R; +import org.sufficientlysecure.keychain.util.Preferences; /** * Setups Toolbar @@ -36,9 +38,19 @@ import org.sufficientlysecure.keychain.R; public abstract class BaseActivity extends AppCompatActivity { protected Toolbar mToolbar; protected View mStatusBar; + private static Preferences sPreferences; @Override protected void onCreate(Bundle savedInstanceState) { + sPreferences = Preferences.getPreferences(this); + int themeId = R.style.LightTheme; + if ("dark".equals(sPreferences.getTheme())) { + themeId = R.style.DarkTheme; + } + + ContextThemeWrapper w = new ContextThemeWrapper(this, themeId); + getTheme().setTo(w.getTheme()); + super.onCreate(savedInstanceState); initLayout(); initToolbar(); -- cgit v1.2.3