| Index: chrome/browser/ui/browser_instant_controller.h
|
| diff --git a/chrome/browser/ui/browser_instant_controller.h b/chrome/browser/ui/browser_instant_controller.h
|
| index f154992bd2343718214995631babb4e24e882da3..61ee8191646123f34359c1a52288dedbfeaac2b9 100644
|
| --- a/chrome/browser/ui/browser_instant_controller.h
|
| +++ b/chrome/browser/ui/browser_instant_controller.h
|
| @@ -43,17 +43,32 @@ class BrowserInstantController : public content::NotificationObserver,
|
| // Registers Instant related preferences.
|
| static void RegisterUserPrefs(PrefServiceSyncable* prefs);
|
|
|
| + // If |url| is the new tab page URL, set |target_contents| to the preloaded
|
| + // NTP contents from InstantController. If |source_contents| is not NULL, we
|
| + // replace it with the new |target_contents| in the tabstrip and delete
|
| + // |source_contents|. Otherwise, the caller owns |target_contents| and is
|
| + // responsible for inserting it into the tabstrip.
|
| + //
|
| + // Returns true if and only if we update |target_contents|.
|
| + bool MaybeSwapInInstantNTPContents(
|
| + const GURL& url,
|
| + content::WebContents* source_contents,
|
| + content::WebContents** target_contents);
|
| +
|
| // Commits the current Instant, returning true on success. This is intended
|
| // for use from OpenCurrentURL.
|
| bool OpenInstant(WindowOpenDisposition disposition);
|
|
|
| + // Returns the Profile associated with the Browser that owns this object.
|
| + Profile* profile() const;
|
| +
|
| // Returns the InstantController or NULL if there is no InstantController for
|
| // this BrowserInstantController.
|
| InstantController* instant() { return &instant_; }
|
|
|
| // Invoked by |instant_| to commit the |preview| by merging it into the active
|
| - // tab or adding it as a new tab. We take ownership of |preview|.
|
| - void CommitInstant(content::WebContents* preview, bool in_new_tab);
|
| + // tab or adding it as a new tab.
|
| + void CommitInstant(scoped_ptr<content::WebContents> preview, bool in_new_tab);
|
|
|
| // Invoked by |instant_| to autocomplete the |suggestion| into the omnibox.
|
| void SetInstantSuggestion(const InstantSuggestion& suggestion);
|
| @@ -113,6 +128,11 @@ class BrowserInstantController : public content::NotificationObserver,
|
| // Helper for handling theme area height change.
|
| void OnThemeAreaHeightChanged(int height);
|
|
|
| + // Replaces the contents at tab |index| with |new_contents| and deletes the
|
| + // existing contents.
|
| + void ReplaceWebContentsAt(int index,
|
| + scoped_ptr<content::WebContents> new_contents);
|
| +
|
| Browser* const browser_;
|
|
|
| InstantController instant_;
|
|
|