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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ToolbarSceneLayer.java

Issue 2158853004: Do not include toolbar shadow for UIResourceLayer snapshot (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: update comment Created 4 years, 5 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
Index: chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ToolbarSceneLayer.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ToolbarSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ToolbarSceneLayer.java
index 148c8b68598da141ba9196b36af5e0febbede90c..d0ca4d7ea37f223005f1a254f093d06c40dc5973 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ToolbarSceneLayer.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/ToolbarSceneLayer.java
@@ -17,6 +17,8 @@ import org.chromium.chrome.browser.compositor.layouts.eventfilter.EventFilter;
import org.chromium.chrome.browser.compositor.overlays.SceneOverlay;
import org.chromium.chrome.browser.device.DeviceClassManager;
import org.chromium.chrome.browser.fullscreen.ChromeFullscreenManager;
+import org.chromium.chrome.browser.tab.Tab;
+import org.chromium.chrome.browser.tabmodel.TabModelSelector;
import org.chromium.chrome.browser.widget.ClipDrawableProgressBar.DrawingInfo;
import org.chromium.chrome.browser.widget.ControlContainer;
import org.chromium.ui.base.DeviceFormFactor;
@@ -45,6 +47,9 @@ public class ToolbarSceneLayer extends SceneOverlayLayer implements SceneOverlay
/** A LayoutRenderHost for accessing drawing information about the toolbar. */
private LayoutRenderHost mRenderHost;
+ /** Used to get information about the current selected tab. */
+ private TabModelSelector mTabModelSelector;
+
/**
* @param context An Android context to use.
* @param provider A LayoutProvider for accessing the current layout.
@@ -58,6 +63,13 @@ public class ToolbarSceneLayer extends SceneOverlayLayer implements SceneOverlay
}
/**
+ * @param tabModelSelector A TabModelSelector so this class can know about the current tab.
+ */
+ public void setTabModelSelector(TabModelSelector tabModelSelector) {
+ mTabModelSelector = tabModelSelector;
+ }
+
+ /**
* Update the toolbar and progress bar layers.
*
* @param topControlsBackgroundColor The background color of the top controls.
@@ -94,9 +106,17 @@ public class ToolbarSceneLayer extends SceneOverlayLayer implements SceneOverlay
useTexture = false;
}
+ Tab currentTab = null;
+ if (mTabModelSelector != null) currentTab = mTabModelSelector.getCurrentTab();
+
+ boolean needsToolbarShadow = fullscreenManager.isTopControlsAndroidViewHidden();
+ if (currentTab != null && currentTab.getNativePage() != null) {
+ needsToolbarShadow &= currentTab.getNativePage().needsToolbarShadow();
+ }
+
nativeUpdateToolbarLayer(mNativePtr, resourceManager, R.id.control_container,
- topControlsBackgroundColor, R.drawable.textbox, topControlsUrlBarAlpha, offset,
- useTexture, forceHideAndroidTopControls);
+ R.drawable.toolbar_shadow, topControlsBackgroundColor, R.drawable.textbox,
+ topControlsUrlBarAlpha, offset, useTexture, needsToolbarShadow);
if (mProgressBarDrawingInfo == null) return;
nativeUpdateProgressBar(mNativePtr,
@@ -234,6 +254,7 @@ public class ToolbarSceneLayer extends SceneOverlayLayer implements SceneOverlay
long nativeToolbarSceneLayer,
ResourceManager resourceManager,
int resourceId,
+ int shadowResourceId,
int toolbarBackgroundColor,
int urlBarResourceId,
float urlBarAlpha,

Powered by Google App Engine
This is Rietveld 408576698