diff options
author | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-14 18:45:22 +0000 |
---|---|---|
committer | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-14 18:45:22 +0000 |
commit | 485af9bb88177c78dcd905234fe6e543fa108789 (patch) | |
tree | 5bd88c67050bc3508d1094c969a9ff1fc09fa54a /chrome/browser/browser.h | |
parent | a48bf4a393ca231598de072e68c93b3a6ce757b9 (diff) | |
download | chromium_src-485af9bb88177c78dcd905234fe6e543fa108789.zip chromium_src-485af9bb88177c78dcd905234fe6e543fa108789.tar.gz chromium_src-485af9bb88177c78dcd905234fe6e543fa108789.tar.bz2 |
Further refine the pinned tab navigation algorithm.
BUG=29281
TEST=included
Review URL: http://codereview.chromium.org/2747011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49702 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/browser.h')
-rw-r--r-- | chrome/browser/browser.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/chrome/browser/browser.h b/chrome/browser/browser.h index 6f4ef76..9939c2b 100644 --- a/chrome/browser/browser.h +++ b/chrome/browser/browser.h @@ -24,6 +24,7 @@ #include "chrome/browser/toolbar_model.h" #include "chrome/common/extensions/extension.h" #include "chrome/common/notification_registrar.h" +#include "chrome/common/page_transition_types.h" #include "chrome/common/page_zoom.h" #include "gfx/rect.h" @@ -608,6 +609,7 @@ class Browser : public TabStripModelDelegate, virtual void TabRestoreServiceDestroyed(TabRestoreService* service); private: + FRIEND_TEST_ALL_PREFIXES(BrowserTest, PinnedTabDisposition); FRIEND_TEST_ALL_PREFIXES(BrowserTest, NoTabsInPopups); // Used to describe why a tab is being detached. This is used by @@ -913,6 +915,17 @@ class Browser : public TabStripModelDelegate, bool SupportsWindowFeatureImpl(WindowFeature feature, bool check_fullscreen) const; + // Calculate a new window open disposition for a navigation. The return + // value will usually be |original_disposition|, but for some pinned tab cases + // we change it to NEW_FOREGROUND_TAB so that the pinned tab feels more + // permanent. + static WindowOpenDisposition AdjustWindowOpenDispositionForTab( + bool is_pinned, + const GURL& url, + const GURL& referrer, + PageTransition::Type transition, + WindowOpenDisposition original_disposition); + // Data members ///////////////////////////////////////////////////////////// NotificationRegistrar registrar_; |