Home | History | Annotate | Download | only in ui
      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 "content/public/common/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                                             content::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