| Index: chrome/browser/ui/views/frame/browser_view.cc
|
| diff --git a/chrome/browser/ui/views/frame/browser_view.cc b/chrome/browser/ui/views/frame/browser_view.cc
|
| index 25d8467da6d11230c666fbc4b29fdbc711836822..2629725c111d58af2aed66fa7b399c9e0afdd281 100644
|
| --- a/chrome/browser/ui/views/frame/browser_view.cc
|
| +++ b/chrome/browser/ui/views/frame/browser_view.cc
|
| @@ -1362,11 +1362,24 @@ void BrowserView::ToggleTabStripMode() {
|
| frame_->TabStripDisplayModeChanged();
|
| }
|
|
|
| +void BrowserView::PrepareForInstant() {
|
| + contents_->FadeActiveContents();
|
| +}
|
| +
|
| void BrowserView::ShowInstant(TabContents* preview_contents) {
|
| if (!preview_container_)
|
| preview_container_ = new TabContentsContainer();
|
| contents_->SetPreview(preview_container_, preview_contents);
|
| preview_container_->ChangeTabContents(preview_contents);
|
| +
|
| +#if defined(OS_WIN)
|
| + // Removing the fade is instant (on windows). We need to force the preview to
|
| + // draw, otherwise the current page flickers before the new page appears.
|
| + RedrawWindow(preview_contents->view()->GetContentNativeView(), NULL, NULL,
|
| + RDW_INVALIDATE | RDW_UPDATENOW | RDW_NOCHILDREN);
|
| +#endif
|
| +
|
| + contents_->RemoveFade();
|
| }
|
|
|
| void BrowserView::HideInstant() {
|
| @@ -1378,6 +1391,7 @@ void BrowserView::HideInstant() {
|
| contents_->SetPreview(NULL, NULL);
|
| delete preview_container_;
|
| preview_container_ = NULL;
|
| + contents_->RemoveFade();
|
| }
|
|
|
| gfx::Rect BrowserView::GetInstantBounds() {
|
|
|