1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_UI_BROWSER_TABSTRIP_H_ 6 #define CHROME_BROWSER_UI_BROWSER_TABSTRIP_H_ 7 8 #include "content/public/browser/navigation_controller.h" 9 #include "content/public/browser/web_contents.h" 10 #include "ui/base/page_transition_types.h" 11 #include "ui/base/window_open_disposition.h" 12 13 class Browser; 14 class GURL; 15 class Profile; 16 17 namespace content { 18 class SiteInstance; 19 } 20 21 namespace gfx { 22 class Rect; 23 } 24 25 namespace chrome { 26 27 // Adds a tab to the tab strip of the specified browser and loads |url| into it. 28 // If |url| is an empty URL, then the new tab-page is laoded. An |index| of -1 29 // means to append it to the end of the tab strip. 30 void AddTabAt(Browser* browser, const GURL& url, int index, bool foreground); 31 32 // Adds a selected tab with the specified URL and transition, returns the 33 // created WebContents. 34 content::WebContents* AddSelectedTabWithURL(Browser* browser, 35 const GURL& url, 36 ui::PageTransition transition); 37 38 // Creates a new tab with the already-created WebContents 'new_contents'. 39 // The window for the added contents will be reparented correctly when this 40 // method returns. If |disposition| is NEW_POPUP, |pos| should hold the 41 // initial position. If |was_blocked| is non-NULL, then |*was_blocked| will be 42 // set to true if the popup gets blocked, and left unchanged otherwise. 43 void AddWebContents(Browser* browser, 44 content::WebContents* source_contents, 45 content::WebContents* new_contents, 46 WindowOpenDisposition disposition, 47 const gfx::Rect& initial_pos, 48 bool user_gesture, 49 bool* was__blocked); 50 51 // Closes the specified WebContents in the specified Browser. If 52 // |add_to_history| is true, an entry in the historical tab database is created. 53 void CloseWebContents(Browser* browser, 54 content::WebContents* contents, 55 bool add_to_history); 56 57 } // namespace chrome 58 59 #endif // CHROME_BROWSER_UI_BROWSER_TABSTRIP_H_ 60