Change status-bar color on theme change
Move into separate ns to avoid circular dependecy Fix android system white theme status bar Signed-off-by: Gheorghe Pinzaru <feross95@gmail.com>
This commit is contained in:
parent
dae891979f
commit
197ce2eb60
|
@ -127,7 +127,7 @@ public class MainActivity extends ReactFragmentActivity
|
||||||
Log.v("RNBootstrap", "Available system memory "+getAvailableMemory(activityManager).availMem + ", maximum usable application memory " + activityManager.getLargeMemoryClass()+"M");
|
Log.v("RNBootstrap", "Available system memory "+getAvailableMemory(activityManager).availMem + ", maximum usable application memory " + activityManager.getLargeMemoryClass()+"M");
|
||||||
|
|
||||||
setSecureFlag();
|
setSecureFlag();
|
||||||
SplashScreen.show(this, R.style.AppTheme);
|
SplashScreen.show(this, true);
|
||||||
// NOTE: Try to not restore the state https://github.com/software-mansion/react-native-screens/issues/17
|
// NOTE: Try to not restore the state https://github.com/software-mansion/react-native-screens/issues/17
|
||||||
super.onCreate(null);
|
super.onCreate(null);
|
||||||
|
|
||||||
|
|
|
@ -6,8 +6,8 @@
|
||||||
<item name="android:windowBackground">?attr/backgroundColor</item>
|
<item name="android:windowBackground">?attr/backgroundColor</item>
|
||||||
<item name="android:textColor">?attr/textColor</item>
|
<item name="android:textColor">?attr/textColor</item>
|
||||||
<item name="android:forceDarkAllowed">true</item>
|
<item name="android:forceDarkAllowed">true</item>
|
||||||
<item name="android:windowTranslucentStatus">true</item>
|
<item name="android:windowTranslucentStatus">false</item>
|
||||||
<item name="android:statusBarColor">@android:color/transparent</item>
|
<item name="android:statusBarColor">?attr/backgroundColor</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="LightTheme" parent="AppTheme">
|
<style name="LightTheme" parent="AppTheme">
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
(ns status-im.init.core
|
(ns status-im.init.core
|
||||||
(:require [clojure.string :as string]
|
(:require [clojure.string :as string]
|
||||||
[quo.theme :as quo-theme]
|
|
||||||
[re-frame.core :as re-frame]
|
[re-frame.core :as re-frame]
|
||||||
[status-im.multiaccounts.login.core :as multiaccounts.login]
|
[status-im.multiaccounts.login.core :as multiaccounts.login]
|
||||||
[status-im.native-module.core :as status]
|
[status-im.native-module.core :as status]
|
||||||
[status-im.network.net-info :as network]
|
[status-im.network.net-info :as network]
|
||||||
[status-im.ui.components.colors :as colors]
|
|
||||||
[status-im.db :refer [app-db]]
|
[status-im.db :refer [app-db]]
|
||||||
[status-im.utils.fx :as fx]
|
[status-im.utils.fx :as fx]
|
||||||
[status-im.utils.theme :as theme]))
|
[status-im.theme.core :as theme]
|
||||||
|
[status-im.utils.theme :as utils.theme]))
|
||||||
|
|
||||||
(fx/defn initialize-app-db
|
(fx/defn initialize-app-db
|
||||||
"Initialize db to initial state"
|
"Initialize db to initial state"
|
||||||
|
@ -81,7 +80,6 @@
|
||||||
(re-frame/reg-fx
|
(re-frame/reg-fx
|
||||||
::init-theme
|
::init-theme
|
||||||
(fn []
|
(fn []
|
||||||
(theme/add-mode-change-listener #(re-frame/dispatch [:system-theme-mode-changed %]))
|
(utils.theme/add-mode-change-listener #(re-frame/dispatch [:system-theme-mode-changed %]))
|
||||||
(when (theme/is-dark-mode)
|
(when (utils.theme/is-dark-mode)
|
||||||
(quo-theme/set-theme :dark)
|
(theme/change-theme :dark))))
|
||||||
(colors/set-theme :dark))))
|
|
||||||
|
|
|
@ -1,15 +1,14 @@
|
||||||
(ns status-im.multiaccounts.core
|
(ns status-im.multiaccounts.core
|
||||||
(:require [quo.theme :as quo-theme]
|
(:require [re-frame.core :as re-frame]
|
||||||
[re-frame.core :as re-frame]
|
|
||||||
[status-im.ethereum.stateofus :as stateofus]
|
[status-im.ethereum.stateofus :as stateofus]
|
||||||
[status-im.multiaccounts.update.core :as multiaccounts.update]
|
[status-im.multiaccounts.update.core :as multiaccounts.update]
|
||||||
[status-im.native-module.core :as native-module]
|
[status-im.native-module.core :as native-module]
|
||||||
[status-im.notifications.core :as notifications]
|
[status-im.notifications.core :as notifications]
|
||||||
[status-im.ui.components.colors :as colors]
|
|
||||||
[status-im.utils.fx :as fx]
|
[status-im.utils.fx :as fx]
|
||||||
[status-im.utils.gfycat.core :as gfycat]
|
[status-im.utils.gfycat.core :as gfycat]
|
||||||
[status-im.utils.identicon :as identicon]
|
[status-im.utils.identicon :as identicon]
|
||||||
[status-im.utils.theme :as theme]))
|
[status-im.utils.theme :as utils.theme]
|
||||||
|
[status-im.theme.core :as theme]))
|
||||||
|
|
||||||
(defn displayed-name
|
(defn displayed-name
|
||||||
"Use preferred name, name or alias in that order"
|
"Use preferred name, name or alias in that order"
|
||||||
|
@ -97,11 +96,10 @@
|
||||||
(re-frame/reg-fx
|
(re-frame/reg-fx
|
||||||
::switch-theme
|
::switch-theme
|
||||||
(fn [theme-id]
|
(fn [theme-id]
|
||||||
(let [theme (if (or (= 2 theme-id) (and (= 0 theme-id) (theme/is-dark-mode)))
|
(let [theme (if (or (= 2 theme-id) (and (= 0 theme-id) (utils.theme/is-dark-mode)))
|
||||||
:dark
|
:dark
|
||||||
:light)]
|
:light)]
|
||||||
(quo-theme/set-theme theme)
|
(theme/change-theme theme))))
|
||||||
(colors/set-theme theme))))
|
|
||||||
|
|
||||||
(fx/defn switch-appearance
|
(fx/defn switch-appearance
|
||||||
{:events [:multiaccounts.ui/appearance-switched]}
|
{:events [:multiaccounts.ui/appearance-switched]}
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
(ns status-im.theme.core
|
||||||
|
(:require [status-im.ui.components.status-bar.view :as status-bar]
|
||||||
|
[status-im.ui.components.colors :as colors]
|
||||||
|
[quo.theme :as quo-theme]))
|
||||||
|
|
||||||
|
(defn change-theme [theme]
|
||||||
|
(quo-theme/set-theme theme)
|
||||||
|
(colors/set-theme theme)
|
||||||
|
(status-bar/set-status-bar nil))
|
Loading…
Reference in New Issue