diff options
author | ben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-04 03:28:45 +0000 |
---|---|---|
committer | ben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-04 03:28:45 +0000 |
commit | 481c9e26428a133a25042d3d0feabb5f5851f713 (patch) | |
tree | e5df99a298c86e114ef2134bfd0eeb512c2462dc /chrome/browser/views/frame/browser_view_layout.cc | |
parent | 5a728204248e9ffb3cfabb6119c2ec6bce588488 (diff) | |
download | chromium_src-481c9e26428a133a25042d3d0feabb5f5851f713.zip chromium_src-481c9e26428a133a25042d3d0feabb5f5851f713.tar.gz chromium_src-481c9e26428a133a25042d3d0feabb5f5851f713.tar.bz2 |
Start making a vertical tabstrip. Does nothing right now.
The option to enable the vertical tabstrip will appear when Chrome is run with:
--enable-vertical-tabs
and a pref is set. There is presently no UI to set this pref.
http://crbug.com/34509
TEST=none
Review URL: http://codereview.chromium.org/561004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38076 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/views/frame/browser_view_layout.cc')
-rw-r--r-- | chrome/browser/views/frame/browser_view_layout.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/chrome/browser/views/frame/browser_view_layout.cc b/chrome/browser/views/frame/browser_view_layout.cc index ec75cac..fcaa7ed 100644 --- a/chrome/browser/views/frame/browser_view_layout.cc +++ b/chrome/browser/views/frame/browser_view_layout.cc @@ -14,6 +14,7 @@ #include "chrome/browser/views/frame/browser_extender.h" #include "chrome/browser/views/frame/browser_frame.h" #include "chrome/browser/views/frame/browser_view.h" +#include "chrome/browser/views/tabs/side_tab_strip.h" #include "chrome/browser/views/tabs/tab_strip.h" #include "chrome/browser/views/toolbar_view.h" #include "views/window/window.h" @@ -232,6 +233,9 @@ void BrowserViewLayout::ViewAdded(views::View* host, views::View* view) { case VIEW_ID_TAB_STRIP: tabstrip_ = static_cast<TabStrip*>(view); break; + case VIEW_ID_SIDE_TABSTRIP: + side_tabstrip_ = static_cast<SideTabStrip*>(view); + break; } } @@ -244,6 +248,7 @@ void BrowserViewLayout::ViewRemoved(views::View* host, views::View* view) { } void BrowserViewLayout::Layout(views::View* host) { + LayoutSideTabs(); int top = LayoutTabStrip(); top = LayoutToolbar(top); top = LayoutBookmarkAndInfoBars(top); @@ -272,6 +277,15 @@ gfx::Size BrowserViewLayout::GetPreferredSize(views::View* host) { ////////////////////////////////////////////////////////////////////////////// // BrowserViewLayout, private: +void BrowserViewLayout::LayoutSideTabs() { + vertical_layout_rect_ = browser_view_->GetLocalBounds(true); + if (SideTabStrip::Visible(browser()->profile())) { + gfx::Size ps = side_tabstrip_->GetPreferredSize(); + vertical_layout_rect_.Inset(ps.width(), 0, 0, 0); + side_tabstrip_->SetBounds(0, 0, ps.width(), browser_view_->height()); + } +} + int BrowserViewLayout::LayoutTabStrip() { if (!browser_view_->IsTabStripVisible()) { tabstrip_->SetVisible(false); |