| Index: chrome/browser/ui/gtk/tab_modal_confirm_dialog_gtk.cc
|
| diff --git a/chrome/browser/ui/gtk/tab_modal_confirm_dialog_gtk.cc b/chrome/browser/ui/gtk/tab_modal_confirm_dialog_gtk.cc
|
| index f96d8a656dee85a6cbec3e21858b3d936f1a19d4..c08eadae385812c1c0c92446c3d6bb2729e874eb 100644
|
| --- a/chrome/browser/ui/gtk/tab_modal_confirm_dialog_gtk.cc
|
| +++ b/chrome/browser/ui/gtk/tab_modal_confirm_dialog_gtk.cc
|
| @@ -31,7 +31,8 @@ TabModalConfirmDialog* TabModalConfirmDialog::Create(
|
| TabModalConfirmDialogGtk::TabModalConfirmDialogGtk(
|
| TabModalConfirmDialogDelegate* delegate,
|
| content::WebContents* web_contents)
|
| - : delegate_(delegate),
|
| + : web_contents_(web_contents),
|
| + delegate_(delegate),
|
| window_(NULL) {
|
| dialog_ = gtk_vbox_new(FALSE, ui::kContentAreaSpacing);
|
| GtkWidget* label = gtk_label_new(
|
| @@ -100,7 +101,7 @@ TabModalConfirmDialogGtk::TabModalConfirmDialogGtk(
|
| g_signal_connect(dialog_, "destroy", G_CALLBACK(OnDestroyThunk), this);
|
|
|
| window_ = CreateWebContentsModalDialogGtk(dialog_, cancel_);
|
| - delegate_->set_close_delegate(this);
|
| + delegate_->set_operations_delegate(this);
|
|
|
| WebContentsModalDialogManager* web_contents_modal_dialog_manager =
|
| WebContentsModalDialogManager::FromWebContents(web_contents);
|
| @@ -123,6 +124,13 @@ void TabModalConfirmDialogGtk::CloseDialog() {
|
| gtk_widget_destroy(window_);
|
| }
|
|
|
| +void TabModalConfirmDialogGtk::SetPreventCloseOnLoadStart(bool prevent) {
|
| + WebContentsModalDialogManager* web_contents_modal_dialog_manager =
|
| + WebContentsModalDialogManager::FromWebContents(web_contents_);
|
| + web_contents_modal_dialog_manager->SetPreventCloseOnLoadStart(window_,
|
| + prevent);
|
| +}
|
| +
|
| void TabModalConfirmDialogGtk::OnAccept(GtkWidget* widget) {
|
| delegate_->Accept();
|
| }
|
|
|