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

Side by Side Diff: chrome/browser/ui/views/html_dialog_view.cc

Issue 9225053: Add a blocking version of the sync promo dialog (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 years, 10 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/views/html_dialog_view.h" 5 #include "chrome/browser/ui/views/html_dialog_view.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/utf_string_conversions.h" 9 #include "base/utf_string_conversions.h"
10 #include "chrome/browser/profiles/profile.h" 10 #include "chrome/browser/profiles/profile.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 Browser* browser, 43 Browser* browser,
44 HtmlDialogUIDelegate* delegate, 44 HtmlDialogUIDelegate* delegate,
45 DialogStyle style) { 45 DialogStyle style) {
46 HtmlDialogView* html_view = new HtmlDialogView(profile, browser, delegate); 46 HtmlDialogView* html_view = new HtmlDialogView(profile, browser, delegate);
47 browser::CreateViewsWindow(parent, html_view, style); 47 browser::CreateViewsWindow(parent, html_view, style);
48 html_view->InitDialog(); 48 html_view->InitDialog();
49 html_view->GetWidget()->Show(); 49 html_view->GetWidget()->Show();
50 return html_view->GetWidget()->GetNativeWindow(); 50 return html_view->GetWidget()->GetNativeWindow();
51 } 51 }
52 52
53 void CloseHtmlDialog(gfx::NativeWindow window) {
54 views::Widget::GetWidgetForNativeWindow(window)->Close();
55 }
56
53 } // namespace browser 57 } // namespace browser
54 58
55 //////////////////////////////////////////////////////////////////////////////// 59 ////////////////////////////////////////////////////////////////////////////////
56 // HtmlDialogView, public: 60 // HtmlDialogView, public:
57 61
58 HtmlDialogView::HtmlDialogView(Profile* profile, 62 HtmlDialogView::HtmlDialogView(Profile* profile,
59 Browser* browser, 63 Browser* browser,
60 HtmlDialogUIDelegate* delegate) 64 HtmlDialogUIDelegate* delegate)
61 : DOMView(), 65 : DOMView(),
62 HtmlDialogTabContentsDelegate(profile), 66 HtmlDialogTabContentsDelegate(profile),
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 #endif 249 #endif
246 } 250 }
247 251
248 void HtmlDialogView::CloseContents(WebContents* source) { 252 void HtmlDialogView::CloseContents(WebContents* source) {
249 bool close_dialog = false; 253 bool close_dialog = false;
250 OnCloseContents(source, &close_dialog); 254 OnCloseContents(source, &close_dialog);
251 if (close_dialog) 255 if (close_dialog)
252 OnDialogClosed(std::string()); 256 OnDialogClosed(std::string());
253 } 257 }
254 258
259 content::WebContents* HtmlDialogView::OpenURLFromTab(
260 content::WebContents* source,
261 const content::OpenURLParams& params) {
262 content::WebContents* new_contents = NULL;
263 if (delegate_ &&
264 delegate_->HandleOpenURLFromTab(source, params, &new_contents)) {
265 return new_contents;
266 }
267 return HtmlDialogTabContentsDelegate::OpenURLFromTab(source, params);
268 }
269
270 void HtmlDialogView::AddNewContents(content::WebContents* source,
271 content::WebContents* new_contents,
272 WindowOpenDisposition disposition,
273 const gfx::Rect& initial_pos,
274 bool user_gesture) {
275 if (delegate_ && delegate_->HandlerAddNewContents(
sky 2012/01/30 15:27:47 HandlerAddNewContents->HandleAddNewContents.
sail 2012/01/30 17:13:03 Done.
276 source, new_contents, disposition, initial_pos, user_gesture)) {
277 return;
278 }
279 HtmlDialogTabContentsDelegate::AddNewContents(
280 source, new_contents, disposition, initial_pos, user_gesture);
281 }
282
255 //////////////////////////////////////////////////////////////////////////////// 283 ////////////////////////////////////////////////////////////////////////////////
256 // HtmlDialogView: 284 // HtmlDialogView:
257 285
258 void HtmlDialogView::InitDialog() { 286 void HtmlDialogView::InitDialog() {
259 // Now Init the DOMView. This view runs in its own process to render the html. 287 // Now Init the DOMView. This view runs in its own process to render the html.
260 DOMView::Init(profile(), NULL); 288 DOMView::Init(profile(), NULL);
261 289
262 WebContents* web_contents = dom_contents_->web_contents(); 290 WebContents* web_contents = dom_contents_->web_contents();
263 web_contents->SetDelegate(this); 291 web_contents->SetDelegate(this);
264 292
(...skipping 18 matching lines...) Expand all
283 } 311 }
284 312
285 void HtmlDialogView::OnTabMainFrameFirstRender() { 313 void HtmlDialogView::OnTabMainFrameFirstRender() {
286 #if defined(OS_CHROMEOS) && defined(TOOLKIT_USES_GTK) 314 #if defined(OS_CHROMEOS) && defined(TOOLKIT_USES_GTK)
287 if (initialized_) { 315 if (initialized_) {
288 views::NativeWidgetGtk::UpdateFreezeUpdatesProperty( 316 views::NativeWidgetGtk::UpdateFreezeUpdatesProperty(
289 GTK_WINDOW(GetWidget()->GetNativeView()), false); 317 GTK_WINDOW(GetWidget()->GetNativeView()), false);
290 } 318 }
291 #endif 319 #endif
292 } 320 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698