summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authortfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-11 13:45:29 +0000
committertfarina@chromium.org <tfarina@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-11 13:45:29 +0000
commit12aea7f4b5963426318368b50d1813f5ea159b2e (patch)
tree396dfc7546d5c3e58f2192184c788f4e7fe7caf7 /chrome
parentecdfd6c54d1cd8827f9a3e518bf693c40b0a8fdf (diff)
downloadchromium_src-12aea7f4b5963426318368b50d1813f5ea159b2e.zip
chromium_src-12aea7f4b5963426318368b50d1813f5ea159b2e.tar.gz
chromium_src-12aea7f4b5963426318368b50d1813f5ea159b2e.tar.bz2
gtk: Refactor download-in-progress class to match with the views side.
R=erg@chromium.org Review URL: https://chromiumcodereview.appspot.com/10024048 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131759 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/ui/gtk/browser_window_gtk.cc2
-rw-r--r--chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.cc50
-rw-r--r--chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.h14
3 files changed, 34 insertions, 32 deletions
diff --git a/chrome/browser/ui/gtk/browser_window_gtk.cc b/chrome/browser/ui/gtk/browser_window_gtk.cc
index 0a15ec3..1313a3b 100644
--- a/chrome/browser/ui/gtk/browser_window_gtk.cc
+++ b/chrome/browser/ui/gtk/browser_window_gtk.cc
@@ -1285,7 +1285,7 @@ void BrowserWindowGtk::ShowPasswordGenerationBubble(const gfx::Rect& rect) {
}
void BrowserWindowGtk::ConfirmBrowserCloseWithPendingDownloads() {
- new DownloadInProgressDialogGtk(browser());
+ DownloadInProgressDialogGtk::Show(browser(), GetNativeHandle());
}
void BrowserWindowGtk::Observe(int type,
diff --git a/chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.cc b/chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.cc
index e47e6c5..b619a40 100644
--- a/chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.cc
+++ b/chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.cc
@@ -8,18 +8,21 @@
#include "base/string16.h"
#include "base/string_number_conversions.h"
-#include "chrome/browser/download/download_service.h"
-#include "chrome/browser/download/download_service_factory.h"
-#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
-#include "chrome/browser/ui/browser_window.h"
#include "chrome/browser/ui/gtk/gtk_util.h"
-#include "content/public/browser/download_manager.h"
#include "grit/chromium_strings.h"
#include "grit/generated_resources.h"
#include "ui/base/l10n/l10n_util.h"
-DownloadInProgressDialogGtk::DownloadInProgressDialogGtk(Browser* browser)
+// static
+void DownloadInProgressDialogGtk::Show(Browser* browser,
+ gfx::NativeWindow parent_window) {
+ new DownloadInProgressDialogGtk(browser, parent_window);
+}
+
+DownloadInProgressDialogGtk::DownloadInProgressDialogGtk(
+ Browser* browser,
+ gfx::NativeWindow parent_window)
: browser_(browser) {
int download_count;
Browser::DownloadClosePreventionType type =
@@ -39,22 +42,20 @@ DownloadInProgressDialogGtk::DownloadInProgressDialogGtk(Browser* browser)
std::string ok_button_text;
std::string cancel_button_text;
if (download_count == 1) {
- warning_text =
- l10n_util::GetStringUTF8(IDS_SINGLE_DOWNLOAD_REMOVE_CONFIRM_WARNING);
- explanation_text =
- l10n_util::GetStringUTF8(
- IDS_SINGLE_DOWNLOAD_REMOVE_CONFIRM_EXPLANATION);
+ warning_text = l10n_util::GetStringUTF8(
+ IDS_SINGLE_DOWNLOAD_REMOVE_CONFIRM_WARNING);
+ explanation_text = l10n_util::GetStringUTF8(
+ IDS_SINGLE_DOWNLOAD_REMOVE_CONFIRM_EXPLANATION);
ok_button_text = l10n_util::GetStringUTF8(
IDS_SINGLE_DOWNLOAD_REMOVE_CONFIRM_OK_BUTTON_LABEL);
cancel_button_text = l10n_util::GetStringUTF8(
IDS_SINGLE_DOWNLOAD_REMOVE_CONFIRM_CANCEL_BUTTON_LABEL);
} else {
- warning_text =
- l10n_util::GetStringFUTF8(IDS_MULTIPLE_DOWNLOADS_REMOVE_CONFIRM_WARNING,
- base::IntToString16(download_count));
- explanation_text =
- l10n_util::GetStringUTF8(
- IDS_MULTIPLE_DOWNLOADS_REMOVE_CONFIRM_EXPLANATION);
+ warning_text = l10n_util::GetStringFUTF8(
+ IDS_MULTIPLE_DOWNLOADS_REMOVE_CONFIRM_WARNING,
+ base::IntToString16(download_count));
+ explanation_text = l10n_util::GetStringUTF8(
+ IDS_MULTIPLE_DOWNLOADS_REMOVE_CONFIRM_EXPLANATION);
ok_button_text = l10n_util::GetStringUTF8(
IDS_MULTIPLE_DOWNLOADS_REMOVE_CONFIRM_OK_BUTTON_LABEL);
cancel_button_text = l10n_util::GetStringUTF8(
@@ -62,18 +63,16 @@ DownloadInProgressDialogGtk::DownloadInProgressDialogGtk(Browser* browser)
}
GtkWidget* dialog = gtk_message_dialog_new(
- browser_->window()->GetNativeHandle(),
+ parent_window,
static_cast<GtkDialogFlags>(GTK_DIALOG_MODAL),
GTK_MESSAGE_QUESTION,
GTK_BUTTONS_NONE,
"%s",
warning_text.c_str());
- gtk_util::AddButtonToDialog(dialog,
- cancel_button_text.c_str(),
- GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT);
- gtk_util::AddButtonToDialog(dialog,
- ok_button_text.c_str(),
- GTK_STOCK_OK, GTK_RESPONSE_ACCEPT);
+ gtk_util::AddButtonToDialog(dialog, cancel_button_text.c_str(),
+ GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT);
+ gtk_util::AddButtonToDialog(dialog, ok_button_text.c_str(),
+ GTK_STOCK_OK, GTK_RESPONSE_ACCEPT);
gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog),
"%s",
@@ -84,6 +83,9 @@ DownloadInProgressDialogGtk::DownloadInProgressDialogGtk(Browser* browser)
gtk_widget_show_all(dialog);
}
+DownloadInProgressDialogGtk::~DownloadInProgressDialogGtk() {
+}
+
void DownloadInProgressDialogGtk::OnResponse(GtkWidget* dialog,
int response_id) {
gtk_widget_destroy(dialog);
diff --git a/chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.h b/chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.h
index 118fa11..517f9f4 100644
--- a/chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.h
+++ b/chrome/browser/ui/gtk/download/download_in_progress_dialog_gtk.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,19 +8,19 @@
#include "base/basictypes.h"
#include "ui/base/gtk/gtk_signal.h"
+#include "ui/gfx/native_widget_types.h"
class Browser;
-typedef struct _GtkWidget GtkWidget;
-
class DownloadInProgressDialogGtk {
public:
- explicit DownloadInProgressDialogGtk(Browser* browser);
-
- protected:
- ~DownloadInProgressDialogGtk() {}
+ static void Show(Browser* browser, gfx::NativeWindow parent_window);
private:
+ explicit DownloadInProgressDialogGtk(Browser* browser,
+ gfx::NativeWindow parent_window);
+ ~DownloadInProgressDialogGtk();
+
CHROMEGTK_CALLBACK_1(DownloadInProgressDialogGtk, void, OnResponse, int);
Browser* browser_;