diff --git a/app/src/main/java/org/mozilla/fenix/ThemeManager.kt b/app/src/main/java/org/mozilla/fenix/ThemeManager.kt
index b94d6c565..ded8ad4fa 100644
--- a/app/src/main/java/org/mozilla/fenix/ThemeManager.kt
+++ b/app/src/main/java/org/mozilla/fenix/ThemeManager.kt
@@ -54,14 +54,25 @@ class DefaultThemeManager : ThemeManager {
}
// Handles status bar theme change since the window does not dynamically recreate
- fun applyStatusBarTheme(window: Window, themeManager: ThemeManager, context: Context) {
+ fun applyStatusBarTheme(
+ window: Window,
+ themeManager: ThemeManager,
+ context: Context,
+ onHomeScreen: Boolean = true
+ ) {
window.statusBarColor = ContextCompat
.getColor(context, DefaultThemeManager
.resolveAttribute(android.R.attr.statusBarColor, context))
- window.navigationBarColor = ContextCompat
- .getColor(context, DefaultThemeManager
- .resolveAttribute(android.R.attr.navigationBarColor, context))
+ if (onHomeScreen) {
+ window.navigationBarColor = ContextCompat
+ .getColor(context, DefaultThemeManager
+ .resolveAttribute(R.attr.navigationBarColorHome, context))
+ } else {
+ window.navigationBarColor = ContextCompat
+ .getColor(context, DefaultThemeManager
+ .resolveAttribute(R.attr.navigationBarColorBrowser, context))
+ }
when (themeManager.currentTheme) {
ThemeManager.Theme.Light -> {
diff --git a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
index 91a28af64..aa2acdf3f 100644
--- a/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
+++ b/app/src/main/java/org/mozilla/fenix/browser/BrowserFragment.kt
@@ -32,6 +32,7 @@ import mozilla.components.feature.session.SessionUseCases
import mozilla.components.support.base.feature.BackHandler
import mozilla.components.support.base.feature.ViewBoundFeatureWrapper
import org.mozilla.fenix.DefaultThemeManager
+import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.components.FindInPageIntegration
import org.mozilla.fenix.ext.requireComponents
@@ -89,6 +90,9 @@ class BrowserFragment : Fragment(), BackHandler {
}
}
+ val activity = activity as HomeActivity
+ DefaultThemeManager.applyStatusBarTheme(activity.window, activity.themeManager, activity, false)
+
return view
}
diff --git a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
index 86c927488..aeea69fc6 100644
--- a/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
+++ b/app/src/main/java/org/mozilla/fenix/home/HomeFragment.kt
@@ -20,6 +20,7 @@ import kotlinx.android.synthetic.main.fragment_home.view.*
import kotlinx.android.synthetic.main.tab_list_header.view.*
import mozilla.components.browser.session.Session
import mozilla.components.browser.session.SessionManager
+import org.mozilla.fenix.DefaultThemeManager
import org.mozilla.fenix.HomeActivity
import org.mozilla.fenix.R
import org.mozilla.fenix.ext.increaseTapArea
@@ -49,6 +50,8 @@ class HomeFragment : Fragment() {
TabsComponent(view.homeLayout, bus, TabsState(requireComponents.core.sessionManager.sessions))
SessionsComponent(view.homeLayout, bus)
ActionBusFactory.get(this).logMergedObservables()
+ val activity = activity as HomeActivity
+ DefaultThemeManager.applyStatusBarTheme(activity.window, activity.themeManager, activity)
return view
}
diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml
index 00219fa07..afa6800d1 100644
--- a/app/src/main/res/values/attrs.xml
+++ b/app/src/main/res/values/attrs.xml
@@ -21,6 +21,7 @@
+
@@ -32,4 +33,5 @@
+
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index bd4fa59e8..498fe0677 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -10,7 +10,8 @@
- @color/off_white
- - @android:color/transparent
+ - @android:color/transparent
+ - @android:color/transparent
- @color/off_white
@@ -48,7 +49,8 @@
- @color/private_browsing_primary
- - @color/private_browsing_top_gradient
+ - @color/private_browsing_bottom_gradient
+ - @color/private_browsing_top_gradient
- @color/private_browsing_top_gradient