Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3849)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java

Issue 1375693002: Move status bar color setting to ChromeActivity. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Update test to check for status bar color Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
index 3a2e74e0f321d3d2cc12cb35dd78e16ccdd21355..064fa15b8199da9c13d7c08d6fa9052ef6e1596d 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -117,6 +117,7 @@ import org.chromium.chrome.browser.tabmodel.TabWindowManager;
import org.chromium.chrome.browser.toolbar.Toolbar;
import org.chromium.chrome.browser.toolbar.ToolbarControlContainer;
import org.chromium.chrome.browser.toolbar.ToolbarManager;
+import org.chromium.chrome.browser.util.ColorUtils;
import org.chromium.chrome.browser.util.FeatureUtilities;
import org.chromium.chrome.browser.webapps.AddToHomescreenDialog;
import org.chromium.chrome.browser.widget.ControlContainer;
@@ -485,6 +486,11 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
}
@Override
+ public void onShown(Tab tab) {
+ setStatusBarColor(tab, tab.getThemeColor());
+ }
+
+ @Override
public void onHidden(Tab tab) {
mLoFiBarPopupController.dismissLoFiBar();
}
@@ -514,9 +520,10 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
@Override
public void onDidChangeThemeColor(Tab tab, int color) {
- if (getToolbarManager() == null) return;
if (getActivityTab() != tab) return;
+ setStatusBarColor(tab, color);
+ if (getToolbarManager() == null) return;
getToolbarManager().updatePrimaryColor(color);
ControlContainer controlContainer =
@@ -549,6 +556,17 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
mCompositorViewHolder.resetFlags();
}
+ /**
+ * Set device status bar to a given color.
+ * @param tab The tab that is currently showing.
+ * @param color The color that the status bar should be set to.
+ */
+ protected void setStatusBarColor(Tab tab, int color) {
+ int statusBarColor = (tab != null && tab.getDefaultThemeColor() == color)
+ ? Color.BLACK : ColorUtils.getDarkenedColorForStatusBar(color);
+ ApiCompatibilityUtils.setStatusBarColor(getWindow(), statusBarColor);
+ }
+
private void createContextReporterIfNeeded() {
if (mContextReporter != null || getActivityTab() == null) return;
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698