Commit fd9fbd72 authored by Peter Kotwicz's avatar Peter Kotwicz Committed by Commit Bot

[CCT Refactor] Delete BaseCustomTabActivityTabController

Delete BaseCustomTabActivityTabController now that
CustomTabActivityTabController is the only subclass.

BUG=985328

Change-Id: I80599887f9f5cb1d04ce8272d5f1812e8bf907c4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2205593
Commit-Queue: Peter Kotwicz <pkotwicz@chromium.org>
Reviewed-by: default avatarPeter Conn <peconn@chromium.org>
Cr-Commit-Position: refs/heads/master@{#770327}
parent 09f6ed06
......@@ -152,7 +152,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/bookmarkswidget/BookmarkWidgetProvider.java",
"java/src/org/chromium/chrome/browser/bookmarkswidget/BookmarkWidgetProxy.java",
"java/src/org/chromium/chrome/browser/bookmarkswidget/BookmarkWidgetService.java",
"java/src/org/chromium/chrome/browser/browserservices/BrowserServicesActivityTabController.java",
"java/src/org/chromium/chrome/browser/browserservices/BrowserServicesIntentDataProvider.java",
"java/src/org/chromium/chrome/browser/browserservices/BrowserServicesMetrics.java",
"java/src/org/chromium/chrome/browser/browserservices/BrowserServicesStore.java",
......
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.chrome.browser.browserservices;
import android.content.Intent;
import android.os.Bundle;
import androidx.annotation.Nullable;
import org.chromium.chrome.browser.tabmodel.TabModelSelector;
/**
* Interface for controlling Activity's tabs.
*/
public interface BrowserServicesActivityTabController {
/**
* Detaches the tab and starts reparenting into the browser using given {@param intent} and
* {@param startActivityOptions}.
*/
void detachAndStartReparenting(
Intent intent, Bundle startActivityOptions, Runnable finishCallback);
/** Closes the current tab. */
void closeTab();
/** Closes the tab and deletes related metadata. */
void closeAndForgetTab();
/** Save the current state of the tab. */
void saveState();
/** Returns {@link TabModelSelector}. Should be called after postInflationStartup. */
public @Nullable TabModelSelector getTabModelSelector();
}
......@@ -7,8 +7,8 @@ package org.chromium.chrome.browser.customtabs;
import androidx.annotation.Nullable;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.browserservices.BrowserServicesActivityTabController;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabController;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider;
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.tab.Tab;
......@@ -38,12 +38,12 @@ import javax.inject.Inject;
@ActivityScope
public class CloseButtonNavigator {
@Nullable private PageCriteria mLandingPageCriteria;
private final BrowserServicesActivityTabController mTabController;
private final CustomTabActivityTabController mTabController;
private final CustomTabActivityTabProvider mTabProvider;
private final boolean mButtonClosesChildTab;
@Inject
public CloseButtonNavigator(BrowserServicesActivityTabController tabController,
public CloseButtonNavigator(CustomTabActivityTabController tabController,
CustomTabActivityTabProvider tabProvider,
BrowserServicesIntentDataProvider intentDataProvider) {
mTabController = tabController;
......
......@@ -25,7 +25,6 @@ import org.chromium.base.task.PostTask;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.browserservices.BrowserServicesActivityTabController;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.customtabs.CloseButtonNavigator;
import org.chromium.chrome.browser.customtabs.CustomTabObserver;
......@@ -82,7 +81,7 @@ public class CustomTabActivityNavigationController implements StartStopWithNativ
void onFinish(@FinishReason int reason);
}
private final BrowserServicesActivityTabController mTabController;
private final CustomTabActivityTabController mTabController;
private final CustomTabActivityTabProvider mTabProvider;
private final BrowserServicesIntentDataProvider mIntentDataProvider;
private final CustomTabsConnection mConnection;
......@@ -115,7 +114,7 @@ public class CustomTabActivityNavigationController implements StartStopWithNativ
};
@Inject
public CustomTabActivityNavigationController(BrowserServicesActivityTabController tabController,
public CustomTabActivityNavigationController(CustomTabActivityTabController tabController,
CustomTabActivityTabProvider tabProvider,
BrowserServicesIntentDataProvider intentDataProvider, CustomTabsConnection connection,
Lazy<CustomTabObserver> customTabObserver, CloseButtonNavigator closeButtonNavigator,
......
......@@ -24,7 +24,6 @@ import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.ServiceTabLauncher;
import org.chromium.chrome.browser.WarmupManager;
import org.chromium.chrome.browser.WebContentsFactory;
import org.chromium.chrome.browser.browserservices.BrowserServicesActivityTabController;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
import org.chromium.chrome.browser.customtabs.CustomTabDelegateFactory;
......@@ -71,8 +70,7 @@ import dagger.Lazy;
* Creates a new Tab or retrieves an existing Tab for the CustomTabActivity, and initializes it.
*/
@ActivityScope
public class CustomTabActivityTabController
implements InflationObserver, BrowserServicesActivityTabController {
public class CustomTabActivityTabController implements InflationObserver {
// For CustomTabs.WebContentsStateOnLaunch, see histograms.xml. Append only.
@IntDef({WebContentsState.NO_WEBCONTENTS, WebContentsState.PRERENDERED_WEBCONTENTS,
WebContentsState.SPARE_WEBCONTENTS, WebContentsState.TRANSFERRED_WEBCONTENTS})
......@@ -161,7 +159,6 @@ public class CustomTabActivityTabController
&& !hasSpeculated && !mWarmupManager.hasSpareWebContents();
}
@Override
public void detachAndStartReparenting(
Intent intent, Bundle startActivityOptions, Runnable finishCallback) {
Tab tab = mTabProvider.getTab();
......@@ -179,24 +176,20 @@ public class CustomTabActivityTabController
* case links with target="_blank" were followed. See the comment to
* {@link CustomTabActivityTabProvider.Observer#onAllTabsClosed}.
*/
@Override
public void closeTab() {
mTabFactory.getTabModelSelector().getCurrentModel().closeTab(mTabProvider.getTab(),
false, false, false);
}
@Override
public void closeAndForgetTab() {
mTabFactory.getTabModelSelector().closeAllTabs(true);
mTabPersistencePolicy.deleteMetadataStateFileAsync();
}
@Override
public void saveState() {
mTabFactory.getTabModelSelector().saveState();
}
@Override
public TabModelSelector getTabModelSelector() {
return mTabFactory.getTabModelSelector();
}
......
......@@ -4,13 +4,11 @@
package org.chromium.chrome.browser.customtabs.dependency_injection;
import org.chromium.chrome.browser.browserservices.BrowserServicesActivityTabController;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.browserservices.trustedwebactivityui.TwaIntentHandlingStrategy;
import org.chromium.chrome.browser.browserservices.trustedwebactivityui.controller.TwaVerifier;
import org.chromium.chrome.browser.browserservices.trustedwebactivityui.controller.Verifier;
import org.chromium.chrome.browser.customtabs.CustomTabNightModeStateController;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabController;
import org.chromium.chrome.browser.customtabs.content.CustomTabIntentHandler.IntentIgnoringCriterion;
import org.chromium.chrome.browser.customtabs.content.CustomTabIntentHandlingStrategy;
import org.chromium.chrome.browser.customtabs.content.DefaultCustomTabIntentHandlingStrategy;
......@@ -94,10 +92,4 @@ public class BaseCustomTabActivityModule {
public WebApkPostShareTargetNavigator providePostShareTargetNavigator() {
return new WebApkPostShareTargetNavigator();
}
@Provides
public BrowserServicesActivityTabController provideTabController(
CustomTabActivityTabController customTabActivityTabController) {
return customTabActivityTabController;
}
}
......@@ -22,7 +22,6 @@ import org.chromium.base.Log;
import org.chromium.base.metrics.RecordUserAction;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.browserservices.BrowserServicesActivityTabController;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
import org.chromium.chrome.browser.compositor.layouts.LayoutManager;
import org.chromium.chrome.browser.customtabs.CloseButtonVisibilityManager;
......@@ -30,6 +29,7 @@ import org.chromium.chrome.browser.customtabs.CustomButtonParams;
import org.chromium.chrome.browser.customtabs.CustomTabCompositorContentInitializer;
import org.chromium.chrome.browser.customtabs.CustomTabsConnection;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityNavigationController;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabController;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider;
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.fullscreen.ChromeFullscreenManager;
......@@ -64,7 +64,7 @@ public class CustomTabToolbarCoordinator {
private final CustomTabsConnection mConnection;
private final ChromeActivity<?> mActivity;
private final Context mAppContext;
private final BrowserServicesActivityTabController mTabController;
private final CustomTabActivityTabController mTabController;
private final Lazy<ChromeFullscreenManager> mFullscreenManager;
private final CustomTabActivityNavigationController mNavigationController;
private final CloseButtonVisibilityManager mCloseButtonVisibilityManager;
......@@ -84,7 +84,7 @@ public class CustomTabToolbarCoordinator {
public CustomTabToolbarCoordinator(BrowserServicesIntentDataProvider intentDataProvider,
CustomTabActivityTabProvider tabProvider, CustomTabsConnection connection,
ChromeActivity<?> activity, @Named(APP_CONTEXT) Context appContext,
BrowserServicesActivityTabController tabController,
CustomTabActivityTabController tabController,
Lazy<ChromeFullscreenManager> fullscreenManager,
CustomTabActivityNavigationController navigationController,
CloseButtonVisibilityManager closeButtonVisibilityManager,
......
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