Chromium Code Reviews| Index: chrome/browser/ui/views/extensions/media_galleries_dialog_views.cc |
| diff --git a/chrome/browser/ui/views/extensions/media_galleries_dialog_views.cc b/chrome/browser/ui/views/extensions/media_galleries_dialog_views.cc |
| index 46fa4b664f6d611328317fc9f678151f0daa7796..6ea61fe05ee65e4ed617a642a219d3b70ca926c6 100644 |
| --- a/chrome/browser/ui/views/extensions/media_galleries_dialog_views.cc |
| +++ b/chrome/browser/ui/views/extensions/media_galleries_dialog_views.cc |
| @@ -79,18 +79,22 @@ MediaGalleriesDialogViews::MediaGalleriesDialogViews( |
| accepted_(false) { |
| InitChildViews(); |
| - // Ownership of |contents_| is handed off by this call. |window_| will take |
| - // care of deleting itself after calling DeleteDelegate(). |
| - WebContentsModalDialogManager* web_contents_modal_dialog_manager = |
| - WebContentsModalDialogManager::FromWebContents( |
| - controller->web_contents()); |
| - DCHECK(web_contents_modal_dialog_manager); |
| - WebContentsModalDialogManagerDelegate* modal_delegate = |
| - web_contents_modal_dialog_manager->delegate(); |
| - DCHECK(modal_delegate); |
| - window_ = views::Widget::CreateWindowAsFramelessChild( |
| - this, modal_delegate->GetWebContentsModalDialogHost()->GetHostView()); |
| - web_contents_modal_dialog_manager->ShowDialog(window_->GetNativeView()); |
| + // May be NULL during tests. |
| + if (controller->web_contents()) { |
| + // Ownership of |contents_| is handed off by this call. |window_| will take |
| + // care of deleting itself after calling DeleteDelegate(). |
| + // TODO(scr): Ensure contents_ is really deleted. |
|
vandebo (ex-Chrome)
2014/02/11 18:26:24
Please resolve this before commit.
Sheridan Rawlins
2014/02/13 04:57:20
Done.
|
| + WebContentsModalDialogManager* web_contents_modal_dialog_manager = |
| + WebContentsModalDialogManager::FromWebContents( |
| + controller->web_contents()); |
| + DCHECK(web_contents_modal_dialog_manager); |
| + WebContentsModalDialogManagerDelegate* modal_delegate = |
| + web_contents_modal_dialog_manager->delegate(); |
| + DCHECK(modal_delegate); |
| + window_ = views::Widget::CreateWindowAsFramelessChild( |
| + this, modal_delegate->GetWebContentsModalDialogHost()->GetHostView()); |
| + web_contents_modal_dialog_manager->ShowDialog(window_->GetNativeView()); |
| + } |
| } |
| MediaGalleriesDialogViews::~MediaGalleriesDialogViews() {} |
| @@ -328,9 +332,14 @@ views::NonClientFrameView* MediaGalleriesDialogViews::CreateNonClientFrameView( |
| void MediaGalleriesDialogViews::ButtonPressed(views::Button* sender, |
| const ui::Event& event) { |
| - confirm_available_ = true; |
| GetWidget()->client_view()->AsDialogClientView()->UpdateDialogButtons(); |
| + ButtonPressedAction(sender); |
| +} |
| + |
| +void MediaGalleriesDialogViews::ButtonPressedAction(views::Button* sender) { |
| + confirm_available_ = true; |
| + |
| if (sender == add_gallery_button_) { |
| controller_->OnAddFolderClicked(); |
| return; |