diff options
author | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-30 15:05:10 +0000 |
---|---|---|
committer | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-04-30 15:05:10 +0000 |
commit | b9c505bc4409b403aab2c67f016fbe4b01ad1509 (patch) | |
tree | 53a8b85ad11418306336d88dab1c42402b47bfd8 /chrome/browser/views/frame/browser_view_layout.cc | |
parent | 298883bc55dec7bbcb59897b919d9e07691d0da9 (diff) | |
download | chromium_src-b9c505bc4409b403aab2c67f016fbe4b01ad1509.zip chromium_src-b9c505bc4409b403aab2c67f016fbe4b01ad1509.tar.gz chromium_src-b9c505bc4409b403aab2c67f016fbe4b01ad1509.tar.bz2 |
Attempt 2 at relanding your patch. I believe the problem was the removal of the observer in ~TabStrip. By the time TabStrip's destructor was run the model's destructor had already run. I've changed BrowserView to explicitly delete the TabStrip before the browser. See the change between v1 and v2 of this patch in BrowserView for the relevant part.
BUG=none
TEST=none
TBR=ben@chromium.org
Review URL: http://codereview.chromium.org/1817001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46071 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, 7 insertions, 7 deletions
diff --git a/chrome/browser/views/frame/browser_view_layout.cc b/chrome/browser/views/frame/browser_view_layout.cc index 505a913..8f2588d 100644 --- a/chrome/browser/views/frame/browser_view_layout.cc +++ b/chrome/browser/views/frame/browser_view_layout.cc @@ -321,7 +321,7 @@ int BrowserViewLayout::LayoutTabStrip() { gfx::Rect layout_bounds = browser_view_->frame()->GetBoundsForTabStrip(tabstrip_); - if (browser_view_->UsingSideTabs()) { + if (browser_view_->UseVerticalTabs()) { vertical_layout_rect_.Inset( layout_bounds.right() - kBrowserViewTabStripHorizontalOverlap, 0, 0, 0); } else { @@ -337,18 +337,18 @@ int BrowserViewLayout::LayoutTabStrip() { layout_bounds.set_origin(tabstrip_origin); tabstrip_->SetVisible(true); tabstrip_->SetBounds(layout_bounds); - return browser_view_->UsingSideTabs() ? 0 : layout_bounds.bottom(); + return browser_view_->UseVerticalTabs() ? + layout_bounds.y() : layout_bounds.bottom(); } int BrowserViewLayout::LayoutToolbar(int top) { int browser_view_width = vertical_layout_rect_.width(); bool visible = browser_view_->IsToolbarVisible(); toolbar_->location_bar()->SetFocusable(visible); - int y = 0; - if (!browser_view_->UsingSideTabs()) { - y = top - - ((visible && browser_view_->IsTabStripVisible()) - ? kToolbarTabStripVerticalOverlap : 0); + int y = top; + if (!browser_view_->UseVerticalTabs()) { + y -= ((visible && browser_view_->IsTabStripVisible()) ? + kToolbarTabStripVerticalOverlap : 0); } int height = 0; if (visible) { |