summaryrefslogtreecommitdiffstats
path: root/chrome/browser/browser.h
diff options
context:
space:
mode:
authorestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-14 18:45:22 +0000
committerestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-06-14 18:45:22 +0000
commit485af9bb88177c78dcd905234fe6e543fa108789 (patch)
tree5bd88c67050bc3508d1094c969a9ff1fc09fa54a /chrome/browser/browser.h
parenta48bf4a393ca231598de072e68c93b3a6ce757b9 (diff)
downloadchromium_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.h13
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_;