Commit 6e8a8afe authored by Filip Gorski's avatar Filip Gorski Committed by Commit Bot

[CAL] Switching occb.bottombar.ephemeraltab.* to injection of ActivityTabProvider

Bug: 1054072
Change-Id: I0a22eb181959ad7df708119df282643c536f3098
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2082020Reviewed-by: default avatarDavid Trainor <dtrainor@chromium.org>
Commit-Queue: Filip Gorski <fgorski@chromium.org>
Cr-Commit-Position: refs/heads/master@{#747912}
parent 793435fd
......@@ -1315,8 +1315,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
mManualFillingComponent.getKeyboardExtensionViewResizer());
if (EphemeralTabCoordinator.isSupported()) {
mEphemeralTabCoordinator =
new EphemeralTabCoordinator(this, getBottomSheetController());
mEphemeralTabCoordinator = new EphemeralTabCoordinator(
this, getBottomSheetController(), getActivityTabProvider());
}
if (ChromeFeatureList.isEnabled(ChromeFeatureList.ANDROID_NIGHT_MODE_TAB_REPARENTING)) {
......
......@@ -14,6 +14,7 @@ import android.view.View;
import org.chromium.base.Callback;
import org.chromium.base.SysUtils;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.compositor.bottombar.OverlayContentDelegate;
import org.chromium.chrome.browser.compositor.bottombar.OverlayContentProgressObserver;
......@@ -54,6 +55,7 @@ public class EphemeralTabCoordinator implements View.OnLayoutChangeListener {
// TODO(crbug/1001256): Use Context after removing dependency on OverlayPanelContent.
private final ChromeActivity mActivity;
private final BottomSheetController mBottomSheetController;
private final ActivityTabProvider mActivityTabProvider;
private final FaviconLoader mFaviconLoader;
private final EphemeralTabMetrics mMetrics = new EphemeralTabMetrics();
private OverlayPanelContent mPanelContent;
......@@ -69,11 +71,13 @@ public class EphemeralTabCoordinator implements View.OnLayoutChangeListener {
* Constructor.
* @param activity The associated {@link ChromeActivity}.
* @param bottomSheetController The associated {@link BottomSheetController}.
* @param tabProvider The {@link ActivityTabProvider} to get current tab of the activity.
*/
public EphemeralTabCoordinator(
ChromeActivity activity, BottomSheetController bottomSheetController) {
public EphemeralTabCoordinator(ChromeActivity activity,
BottomSheetController bottomSheetController, ActivityTabProvider tabProvider) {
mActivity = activity;
mBottomSheetController = bottomSheetController;
mActivityTabProvider = tabProvider;
mFaviconLoader = new FaviconLoader(mActivity);
mBottomSheetController.addObserver(new EmptyBottomSheetObserver() {
private int mCloseReason;
......@@ -193,7 +197,7 @@ public class EphemeralTabCoordinator implements View.OnLayoutChangeListener {
mBottomSheetController.hideContent(mSheetContent, /* animate= */ true);
mActivity.getCurrentTabCreator().createNewTab(
new LoadUrlParams(mUrl, PageTransition.LINK), TabLaunchType.FROM_LINK,
mActivity.getActivityTabProvider().get());
mActivityTabProvider.get());
mMetrics.recordOpenInNewTab();
}
}
......@@ -246,7 +250,7 @@ public class EphemeralTabCoordinator implements View.OnLayoutChangeListener {
}
private int getMaxSheetHeight() {
Tab tab = mActivity.getActivityTabProvider().get();
Tab tab = mActivityTabProvider.get();
if (tab == null) return 0;
return (int) (tab.getView().getHeight() * 0.9f);
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment