| Index: chrome/android/java/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheet.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheet.java b/chrome/android/java/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheet.java
|
| index 6549ec5fe1feca81f3b860b7d38edc3b3ba23241..f634239ca001844ced957478ac3a524e538be4f6 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheet.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/widget/bottomsheet/BottomSheet.java
|
| @@ -182,6 +182,11 @@ public class BottomSheet
|
| * Called to destroy the BottomSheetContent when it is no longer in use.
|
| */
|
| void destroy();
|
| +
|
| + /**
|
| + * @return The String to use when recording user metrics related to this content.
|
| + */
|
| + String getMetricsName();
|
| }
|
|
|
| /**
|
| @@ -271,6 +276,8 @@ public class BottomSheet
|
|
|
| mGestureDetector = new GestureDetector(context, new BottomSheetSwipeDetector());
|
| mGestureDetector.setIsLongpressEnabled(false);
|
| +
|
| + new BottomSheetMetrics(this);
|
| }
|
|
|
| @Override
|
| @@ -505,6 +512,11 @@ public class BottomSheet
|
| } else {
|
| mDefaultToolbarView.setVisibility(View.VISIBLE);
|
| }
|
| +
|
| +
|
| + for (BottomSheetObserver o : mObservers) {
|
| + o.onSheetContentChanged(mSheetContent);
|
| + }
|
| }
|
|
|
| /**
|
| @@ -728,6 +740,7 @@ public class BottomSheet
|
| * move there instantly.
|
| */
|
| public void setSheetState(@SheetState int state, boolean animate) {
|
| + boolean stateChanged = state != mCurrentState;
|
| mCurrentState = state;
|
|
|
| if (animate) {
|
| @@ -735,6 +748,11 @@ public class BottomSheet
|
| } else {
|
| setSheetOffsetFromBottom(getSheetHeightForState(state));
|
| }
|
| +
|
| + if (!stateChanged) return;
|
| + for (BottomSheetObserver o : mObservers) {
|
| + o.onSheetStateChanged(mCurrentState);
|
| + }
|
| }
|
|
|
| /**
|
|
|