| Index: chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentlyClosedTabManager.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentlyClosedTabManager.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentlyClosedTabManager.java
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..f1985d4b9845f30406b501d9bebb1240e607a8f7
|
| --- /dev/null
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentlyClosedTabManager.java
|
| @@ -0,0 +1,56 @@
|
| +// Copyright 2017 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.ntp;
|
| +
|
| +import android.support.annotation.Nullable;
|
| +
|
| +import org.chromium.chrome.browser.tab.Tab;
|
| +
|
| +import java.util.List;
|
| +
|
| +/**
|
| + * Manages a list of recently closed tabs.
|
| + */
|
| +public interface RecentlyClosedTabManager {
|
| + /**
|
| + * Sets the {@link Runnable} to be called whenever the list of recently closed tabs changes.
|
| + * @param runnable The {@link Runnable} to be called, or null.
|
| + */
|
| + void setTabsUpdatedRunnable(@Nullable Runnable runnable);
|
| +
|
| + /**
|
| + * @param maxTabCount The maximum number of recently closed tabs to return.
|
| + * @return The list of recently closed tabs, with up to maxTabCount elements.
|
| + */
|
| + List<RecentlyClosedTab> getRecentlyClosedTabs(int maxTabCount);
|
| +
|
| + /**
|
| + * Opens a recently closed tab in the current tab or a new tab. If opened in the current tab,
|
| + * the current tab's entire history is replaced.
|
| + *
|
| + * @param tab The current Tab.
|
| + * @param recentTab The RecentlyClosedTab to open.
|
| + * @param windowOpenDisposition The WindowOpenDisposition value specifying whether to open in
|
| + * the current tab or a new tab.
|
| + * @return Whether the tab was successfully opened.
|
| + */
|
| + boolean openRecentlyClosedTab(Tab tab, RecentlyClosedTab recentTab, int windowOpenDisposition);
|
| +
|
| + /**
|
| + * Opens the most recently closed tab in a new tab.
|
| + */
|
| + void openRecentlyClosedTab();
|
| +
|
| + /**
|
| + * Clears all recently closed tabs.
|
| + */
|
| + void clearRecentlyClosedTabs();
|
| +
|
| + /**
|
| + * To be called before this instance is abandoned to the garbage collector so it can do any
|
| + * necessary cleanups. This instance must not be used after this method is called.
|
| + */
|
| + void destroy();
|
| +}
|
|
|