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

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

Issue 1163173002: Pull methods upwards from ChromeTabCreator. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed the rebase Created 5 years, 6 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
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/tabmodel/document/TabDelegate.java » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabCreatorManager.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabCreatorManager.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabCreatorManager.java
index 4255b5a03932531e433c9242159fb6152f4a2f35..c06de536b663a10319f2044f9aefb1f5156c8bf9 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabCreatorManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabCreatorManager.java
@@ -6,6 +6,9 @@ package org.chromium.chrome.browser.tabmodel;
import org.chromium.chrome.browser.Tab;
import org.chromium.chrome.browser.TabState;
+import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType;
+import org.chromium.content_public.browser.LoadUrlParams;
+import org.chromium.content_public.browser.WebContents;
/**
* An interface to return a {@link TabCreator} either for regular or incognito tabs.
@@ -16,19 +19,48 @@ public interface TabCreatorManager {
*/
public interface TabCreator {
/**
+ * Creates a new tab and posts to UI.
+ * @param loadUrlParams parameters of the url load.
+ * @param type Information about how the tab was launched.
+ * @param parent the parent tab, if present.
+ * @return The new tab.
+ */
+ Tab createNewTab(LoadUrlParams loadUrlParams, TabModel.TabLaunchType type, Tab parent);
+
+ /**
* On restore, allows us to create a frozen version of a tab using saved tab state we read
* from disk.
* @param state The tab state that the tab can be restored from.
* @param id The id to give the new tab.
* @param index The index for where to place the tab.
*/
- public void createFrozenTab(TabState state, int id, int index);
+ void createFrozenTab(TabState state, int id, int index);
+
+ /**
+ * Creates a tab around the native web contents pointer.
+ * @param webContents The web contents to create a tab around.
+ * @param parentId The id of the parent tab.
+ * @param type The TabLaunchType describing how this tab was created.
+ * @return The created tab.
+ */
+ Tab createTabWithWebContents(WebContents webContents, int parentId, TabLaunchType type);
/**
* Creates a new tab and loads the NTP.
* @return The created tab.
*/
- public Tab launchNTP();
+ Tab launchNTP();
+
+ /**
+ * Creates a new tab and loads the specified URL in it. This is a convenience method for
+ * {@link #createNewTab} with the default {@link LoadUrlParams} and no parent tab.
+ *
+ * @param url the URL to open.
+ * @param type the type of action that triggered that launch. Determines how the tab is
+ * opened (for example, in the foreground or background).
+ * @return the created tab.
+ */
+ Tab launchUrl(String url, TabModel.TabLaunchType type);
}
/**
« no previous file with comments | « no previous file | chrome/android/java/src/org/chromium/chrome/browser/tabmodel/document/TabDelegate.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698