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

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

Issue 2625923002: Introduce the bottom sheet class for Chrome Home (Closed)
Patch Set: Created 3 years, 11 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/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);

Powered by Google App Engine
This is Rietveld 408576698