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

Unified Diff: chrome/browser/ui/views/extensions/media_galleries_dialog_views.cc

Issue 134163014: Added tests for views flavor of MediaGalleriesDialogTest. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Update comment for ownership of contents_ when testing. Created 6 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 side-by-side diff with in-line comments
Download patch
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..c46a4c75fb26a0664625022eec80a65ed519e026 100644
--- a/chrome/browser/ui/views/extensions/media_galleries_dialog_views.cc
+++ b/chrome/browser/ui/views/extensions/media_galleries_dialog_views.cc
@@ -79,21 +79,27 @@ 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().
+ 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() {}
+MediaGalleriesDialogViews::~MediaGalleriesDialogViews() {
+ if (!controller_->web_contents())
+ delete contents_;
+}
void MediaGalleriesDialogViews::InitChildViews() {
// Outer dialog layout.
@@ -328,9 +334,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;

Powered by Google App Engine
This is Rietveld 408576698