| Index: chrome/browser/views/frame/browser_view.cc
|
| ===================================================================
|
| --- chrome/browser/views/frame/browser_view.cc (revision 40972)
|
| +++ chrome/browser/views/frame/browser_view.cc (working copy)
|
| @@ -81,6 +81,7 @@
|
|
|
| #if defined(OS_WIN)
|
| #include "app/win_util.h"
|
| +#include "chrome/browser/aeropeek_manager.h"
|
| #include "chrome/browser/jumplist.h"
|
| #elif defined(OS_LINUX)
|
| #include "chrome/browser/views/accelerator_table_gtk.h"
|
| @@ -426,6 +427,10 @@
|
| browser_->tabstrip_model()->RemoveObserver(this);
|
|
|
| #if defined(OS_WIN)
|
| + // Remove this observer.
|
| + if (aeropeek_manager_.get())
|
| + browser_->tabstrip_model()->RemoveObserver(aeropeek_manager_.get());
|
| +
|
| // Stop hung plugin monitoring.
|
| ticker_.Stop();
|
| ticker_.UnregisterTickHandler(&hung_window_detector_);
|
| @@ -1571,6 +1576,18 @@
|
| if (GetLayoutManager()) {
|
| GetLayoutManager()->Layout(this);
|
| SchedulePaint();
|
| +#if defined(OS_WIN)
|
| + // Send the margins of the "user-perceived content area" of this
|
| + // browser window so AeroPeekManager can render a background-tab image in
|
| + // the area.
|
| + if (aeropeek_manager_.get()) {
|
| + gfx::Insets insets(GetFindBarBoundingBox().y() + 1,
|
| + GetTabStripBounds().x(),
|
| + GetTabStripBounds().x(),
|
| + GetTabStripBounds().x());
|
| + aeropeek_manager_->SetContentInsets(insets);
|
| + }
|
| +#endif
|
| }
|
| }
|
|
|
| @@ -1699,6 +1716,13 @@
|
| jumplist_.reset(new JumpList);
|
| jumplist_->AddObserver(browser_->profile());
|
| }
|
| +
|
| + if (AeroPeekManager::Enabled()) {
|
| + gfx::Rect bounds(frame_->GetBoundsForTabStrip(tabstrip()));
|
| + aeropeek_manager_.reset(new AeroPeekManager(
|
| + frame_->GetWindow()->GetNativeWindow()));
|
| + browser_->tabstrip_model()->AddObserver(aeropeek_manager_.get());
|
| + }
|
| #endif
|
|
|
| browser_extender_.reset(new BrowserExtender());
|
|
|