Index: chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarControlContainer.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarControlContainer.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarControlContainer.java |
index 84a77aad5d304c0f1fb4d3f9512ec6115bdbf16b..d4a1474f1d6942e5e184d32f01dd517735358f1a 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarControlContainer.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarControlContainer.java |
@@ -17,6 +17,7 @@ import android.widget.FrameLayout; |
import org.chromium.chrome.R; |
import org.chromium.chrome.browser.compositor.layouts.eventfilter.EdgeSwipeHandler; |
+import org.chromium.chrome.browser.compositor.resources.ResourceFactory; |
import org.chromium.chrome.browser.contextualsearch.SwipeRecognizer; |
import org.chromium.chrome.browser.util.ViewUtils; |
import org.chromium.chrome.browser.widget.ClipDrawableProgressBar.DrawingInfo; |
@@ -160,10 +161,12 @@ public class ToolbarControlContainer extends FrameLayout implements ControlConta |
private static class ToolbarViewResourceAdapter extends ViewResourceAdapter { |
private final int[] mTempPosition = new int[2]; |
+ private final Rect mLocationBarRect = new Rect(); |
+ private final Rect mToolbarRect = new Rect(); |
private final View mToolbarContainer; |
private Toolbar mToolbar; |
- private int mToolbarActualHeightPx; |
+ private int mToolbarHeightPx; |
mdjones
2017/03/16 21:01:47
This can be pulled directly from toolbar now.
Khushal
2017/03/17 23:02:58
Done.
|
private int mTabStripHeightPx; |
/** Builds the resource adapter for the toolbar. */ |
@@ -182,10 +185,11 @@ public class ToolbarControlContainer extends FrameLayout implements ControlConta |
if (mToolbar instanceof CustomTabToolbar) { |
containerHeightResId = R.dimen.custom_tabs_control_container_height; |
} |
- mToolbarActualHeightPx = mToolbarContainer.getResources().getDimensionPixelSize( |
- containerHeightResId); |
+ int toolbarHeightMinusShadow = |
+ mToolbarContainer.getResources().getDimensionPixelSize(containerHeightResId); |
mTabStripHeightPx = mToolbarContainer.getResources().getDimensionPixelSize( |
R.dimen.tab_strip_height); |
+ mToolbarHeightPx = toolbarHeightMinusShadow - mTabStripHeightPx; |
} |
/** |
@@ -227,16 +231,17 @@ public class ToolbarControlContainer extends FrameLayout implements ControlConta |
} |
@Override |
- protected void computeContentPadding(Rect outContentPadding) { |
- outContentPadding.set(0, mTabStripHeightPx, mToolbarContainer.getWidth(), |
- mToolbarActualHeightPx); |
- } |
- |
- @Override |
- protected void computeContentAperture(Rect outContentAperture) { |
- mToolbar.getLocationBarContentRect(outContentAperture); |
+ public long createNativeResource() { |
mToolbar.getPositionRelativeToContainer(mToolbarContainer, mTempPosition); |
- outContentAperture.offset(mTempPosition[0], mTempPosition[1]); |
+ mToolbarRect.set(mTempPosition[0], mTempPosition[1], mToolbarContainer.getWidth(), |
+ mTempPosition[1] + mToolbarHeightPx); |
+ |
+ mToolbar.getLocationBarContentRect(mLocationBarRect); |
+ mLocationBarRect.offset(mTempPosition[0], mTempPosition[1]); |
+ |
+ int shadowHeight = mToolbarContainer.getHeight() - mToolbarHeightPx - mTabStripHeightPx; |
+ return ResourceFactory.createToolbarContainerResource( |
+ mToolbarRect, mLocationBarRect, shadowHeight); |
} |
} |