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 2b23b3c0c937ab93fbd4aa966ee1c5d266db696a..cf10b8dcab128cd2b8ba77b6283ccede2bf7b03d 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java |
@@ -22,11 +22,9 @@ import android.os.Build; |
import android.os.Bundle; |
import android.os.StrictMode; |
import android.os.SystemClock; |
-import android.support.design.widget.CoordinatorLayout.LayoutParams; |
import android.support.v7.app.AlertDialog; |
import android.util.DisplayMetrics; |
import android.util.Pair; |
-import android.view.Gravity; |
import android.view.Menu; |
import android.view.MenuItem; |
import android.view.View; |
@@ -127,6 +125,7 @@ import org.chromium.chrome.browser.util.ChromeFileProvider; |
import org.chromium.chrome.browser.util.ColorUtils; |
import org.chromium.chrome.browser.util.FeatureUtilities; |
import org.chromium.chrome.browser.webapps.AddToHomescreenManager; |
+import org.chromium.chrome.browser.widget.BottomSheet; |
import org.chromium.chrome.browser.widget.ControlContainer; |
import org.chromium.components.bookmarks.BookmarkId; |
import org.chromium.content.browser.ContentVideoView; |
@@ -360,6 +359,8 @@ public abstract class ChromeActivity extends AsyncInitializationActivity |
enableHardwareAcceleration(); |
setLowEndTheme(); |
+ BottomSheet bottomSheet = null; |
+ ControlContainer controlContainer = null; |
int controlContainerLayoutId = getControlContainerLayoutId(); |
WarmupManager warmupManager = WarmupManager.getInstance(); |
if (warmupManager.hasViewHierarchyWithToolbar(controlContainerLayoutId)) { |
@@ -384,18 +385,15 @@ public abstract class ChromeActivity extends AsyncInitializationActivity |
toolbarContainerStub.setLayoutResource(controlContainerLayoutId); |
View container = toolbarContainerStub.inflate(); |
- // If the control container is at the bottom apply Gravity.BOTTOM here since |
- // it is not respected in the XML while the ViewStub in between the |
- // CompositorViewHolder and ControlContainer. |
+ // Get a handle to the bottom sheet if using the bottom control container. |
if (controlContainerLayoutId == R.layout.bottom_control_container) { |
- ((LayoutParams) container.getLayoutParams()).gravity = Gravity.BOTTOM; |
+ bottomSheet = (BottomSheet) findViewById(R.id.bottom_sheet); |
} |
} |
// It cannot be assumed that the result of toolbarContainerStub.inflate() will be |
// the control container since it may be wrapped in another view. |
- ControlContainer controlContainer = |
- (ControlContainer) findViewById(R.id.control_container); |
+ controlContainer = (ControlContainer) findViewById(R.id.control_container); |
// Inflate the correct toolbar layout for the device. |
int toolbarLayoutId = getToolbarLayoutId(); |
@@ -418,6 +416,10 @@ public abstract class ChromeActivity extends AsyncInitializationActivity |
mCompositorViewHolder = (CompositorViewHolder) findViewById(R.id.compositor_view_holder); |
mCompositorViewHolder.setRootView(rootView); |
+ if (bottomSheet != null) { |
+ bottomSheet.init(mCompositorViewHolder, controlContainer.getView()); |
Ian Wen
2017/01/11 19:46:53
I think you shouldn't let the bottom sheet to know
mdjones
2017/01/12 21:26:57
Already forgot about the new coordinator. Fixed.
|
+ } |
+ |
// Setting fitsSystemWindows to false ensures that the root view doesn't consume the insets. |
rootView.setFitsSystemWindows(false); |