Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(758)

Side by Side Diff: chrome/browser/ui/constrained_window_tab_helper.cc

Issue 8136027: Print Preview: Make print preview tab modal. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: rebase, more fixes Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/constrained_window_tab_helper.h" 5 #include "chrome/browser/ui/constrained_window_tab_helper.h"
6 6
7 #include "chrome/browser/ui/constrained_window.h" 7 #include "chrome/browser/ui/constrained_window.h"
8 #include "chrome/browser/ui/constrained_window_tab_helper_delegate.h" 8 #include "chrome/browser/ui/constrained_window_tab_helper_delegate.h"
9 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" 9 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h"
10 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper_delegate.h" 10 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper_delegate.h"
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 RenderWidgetHostView* rwhv = contents->GetRenderWidgetHostView(); 76 RenderWidgetHostView* rwhv = contents->GetRenderWidgetHostView();
77 // 70% opaque grey. 77 // 70% opaque grey.
78 SkColor greyish = SkColorSetARGB(178, 0, 0, 0); 78 SkColor greyish = SkColorSetARGB(178, 0, 0, 0);
79 if (rwhv) 79 if (rwhv)
80 rwhv->SetVisuallyDeemphasized(blocked ? &greyish : NULL, false); 80 rwhv->SetVisuallyDeemphasized(blocked ? &greyish : NULL, false);
81 // RenderViewHost may be NULL during shutdown. 81 // RenderViewHost may be NULL during shutdown.
82 if (contents->render_view_host()) 82 if (contents->render_view_host())
83 contents->render_view_host()->set_ignore_input_events(blocked); 83 contents->render_view_host()->set_ignore_input_events(blocked);
84 if (delegate_) 84 if (delegate_)
85 delegate_->SetTabContentBlocked(wrapper_, blocked); 85 delegate_->SetTabContentBlocked(wrapper_, blocked);
86
87 if (!contents->is_being_destroyed() && contents->delegate()) {
88 // Force the printing state to update.
89 contents->SetContentRestrictions(contents->content_restrictions());
90 }
86 } 91 }
87 92
88 void ConstrainedWindowTabHelper::DidNavigateMainFramePostCommit( 93 void ConstrainedWindowTabHelper::DidNavigateMainFramePostCommit(
89 const content::LoadCommittedDetails& details, 94 const content::LoadCommittedDetails& details,
90 const ViewHostMsg_FrameNavigate_Params& params) { 95 const ViewHostMsg_FrameNavigate_Params& params) {
91 // Close constrained windows if necessary. 96 // Close constrained windows if necessary.
92 if (!net::RegistryControlledDomainService::SameDomainOrHost( 97 if (!net::RegistryControlledDomainService::SameDomainOrHost(
93 details.previous_url, details.entry->url())) 98 details.previous_url, details.entry->url()))
94 CloseConstrainedWindows(); 99 CloseConstrainedWindows();
95 } 100 }
96 101
97 void ConstrainedWindowTabHelper::DidGetIgnoredUIEvent() { 102 void ConstrainedWindowTabHelper::DidGetIgnoredUIEvent() {
98 if (constrained_window_count()) { 103 if (constrained_window_count()) {
99 ConstrainedWindow* window = *constrained_window_begin(); 104 ConstrainedWindow* window = *constrained_window_begin();
100 window->FocusConstrainedWindow(); 105 window->FocusConstrainedWindow();
101 } 106 }
102 } 107 }
103 108
104 void ConstrainedWindowTabHelper::TabContentsDestroyed(TabContents* tab) { 109 void ConstrainedWindowTabHelper::TabContentsDestroyed(TabContents* tab) {
105 // First cleanly close all child windows. 110 // First cleanly close all child windows.
106 // TODO(mpcomplete): handle case if MaybeCloseChildWindows() already asked 111 // TODO(mpcomplete): handle case if MaybeCloseChildWindows() already asked
107 // some of these to close. CloseWindows is async, so it might get called 112 // some of these to close. CloseWindows is async, so it might get called
108 // twice before it runs. 113 // twice before it runs.
109 CloseConstrainedWindows(); 114 CloseConstrainedWindows();
110 } 115 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698