summaryrefslogtreecommitdiffstats
path: root/chrome/browser/bookmarks
diff options
context:
space:
mode:
authoravi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-30 19:43:18 +0000
committeravi@chromium.org <avi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-04-30 19:43:18 +0000
commitf21cf2cfe34186333a591ee0788072889c2eaa3e (patch)
treede1a7e58c0d6e6547026a0f01570ee9bc08542f2 /chrome/browser/bookmarks
parente8982947401fb01cfb944271d8defcec0104d224 (diff)
downloadchromium_src-f21cf2cfe34186333a591ee0788072889c2eaa3e.zip
chromium_src-f21cf2cfe34186333a591ee0788072889c2eaa3e.tar.gz
chromium_src-f21cf2cfe34186333a591ee0788072889c2eaa3e.tar.bz2
Revert 46101 - Make a new yes/no messagebox wrapper function, use it in the bookmark alert.
BUG=http://crbug.com/34481; http://crbug.com/40011 TEST=on Mac/ChromeOS, have at least 15 bookmarks on bookmarks bar or other bookmarks, right click on one of those and click on Open all bookmarks. An confirmation dialog box should be shown. No other visible change. Review URL: http://codereview.chromium.org/1687017 TBR=avi@chromium.org Review URL: http://codereview.chromium.org/1783014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46108 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/bookmarks')
-rw-r--r--chrome/browser/bookmarks/bookmark_utils.cc33
1 files changed, 29 insertions, 4 deletions
diff --git a/chrome/browser/bookmarks/bookmark_utils.cc b/chrome/browser/bookmarks/bookmark_utils.cc
index 331d46c..1221ae8 100644
--- a/chrome/browser/bookmarks/bookmark_utils.cc
+++ b/chrome/browser/bookmarks/bookmark_utils.cc
@@ -23,7 +23,6 @@
#include "chrome/browser/browser_process.h"
#include "chrome/browser/browser_window.h"
#include "chrome/browser/history/query_parser.h"
-#include "chrome/browser/platform_util.h"
#include "chrome/browser/pref_service.h"
#include "chrome/browser/profile.h"
#include "chrome/browser/tab_contents/page_navigator.h"
@@ -165,11 +164,37 @@ bool ShouldOpenAll(gfx::NativeWindow parent,
if (descendant_count < bookmark_utils::num_urls_before_prompting)
return true;
- string16 message = l10n_util::GetStringFUTF16(
+ // Bug 40011: we should refactor this into a cross-platform "prompt before
+ // continuing" function.
+#if defined(OS_WIN)
+ std::wstring message =
+ l10n_util::GetStringF(IDS_BOOKMARK_BAR_SHOULD_OPEN_ALL,
+ IntToWString(descendant_count));
+ return MessageBox(parent, message.c_str(),
+ l10n_util::GetString(IDS_PRODUCT_NAME).c_str(),
+ MB_YESNO | MB_ICONWARNING | MB_TOPMOST) == IDYES;
+#elif defined(TOOLKIT_GTK)
+ std::string message = l10n_util::GetStringFUTF8(
IDS_BOOKMARK_BAR_SHOULD_OPEN_ALL,
IntToString16(descendant_count));
- string16 title = l10n_util::GetStringUTF16(IDS_PRODUCT_NAME);
- return platform_util::SimpleYesNoBox(parent, title, message);
+ GtkWidget* dialog = gtk_message_dialog_new(parent,
+ static_cast<GtkDialogFlags>(
+ GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT),
+ GTK_MESSAGE_QUESTION,
+ GTK_BUTTONS_YES_NO,
+ "%s", message.c_str());
+ gtk_util::ApplyMessageDialogQuirks(dialog);
+ gtk_window_set_title(GTK_WINDOW(dialog),
+ l10n_util::GetStringUTF8(IDS_PRODUCT_NAME).c_str());
+ gint result = gtk_dialog_run(GTK_DIALOG(dialog));
+ gtk_widget_destroy(dialog);
+ return (result == GTK_RESPONSE_YES);
+#else
+ // TODO(port): Display a dialog prompt.
+ // http://crbug.com/34481
+ NOTIMPLEMENTED();
+ return true;
+#endif
}
// Comparison function that compares based on date modified of the two nodes.