summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extension_host.h
diff options
context:
space:
mode:
authorpam@chromium.org <pam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-05 18:22:35 +0000
committerpam@chromium.org <pam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-05 18:22:35 +0000
commite1d0303ebea1caddb079d71b63f39463d3944bad (patch)
tree9c9c1abb6d608889aa20d14c34036eb99ffe2c58 /chrome/browser/extensions/extension_host.h
parentd6b401bed87fa50d1fc0993c04ee7ee992dd6627 (diff)
downloadchromium_src-e1d0303ebea1caddb079d71b63f39463d3944bad.zip
chromium_src-e1d0303ebea1caddb079d71b63f39463d3944bad.tar.gz
chromium_src-e1d0303ebea1caddb079d71b63f39463d3944bad.tar.bz2
Implement window.alert() and its cousins for extensions.
BUG=12126 TEST=put a window.prompt() in a background page, a browser action, and a page action. Make sure it gets the result back correctly. Also make sure it still works when called from a web page. Review URL: http://codereview.chromium.org/341089 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31110 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_host.h')
-rw-r--r--chrome/browser/extensions/extension_host.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/chrome/browser/extensions/extension_host.h b/chrome/browser/extensions/extension_host.h
index bf66579..22279a1 100644
--- a/chrome/browser/extensions/extension_host.h
+++ b/chrome/browser/extensions/extension_host.h
@@ -9,6 +9,7 @@
#include "base/scoped_ptr.h"
#include "chrome/browser/extensions/extension_function_dispatcher.h"
+#include "chrome/browser/jsmessage_box_client.h"
#include "chrome/browser/renderer_host/render_view_host_delegate.h"
#include "chrome/browser/tab_contents/render_view_host_delegate_helper.h"
#if defined(TOOLKIT_VIEWS)
@@ -45,7 +46,8 @@ class ExtensionHost : // NOLINT
public RenderViewHostDelegate,
public RenderViewHostDelegate::View,
public ExtensionFunctionDispatcher::Delegate,
- public NotificationObserver {
+ public NotificationObserver,
+ public JavaScriptMessageBoxClient {
public:
class ProcessCreationQueue;
@@ -174,6 +176,16 @@ class ExtensionHost : // NOLINT
const NotificationSource& source,
const NotificationDetails& details);
+ // JavaScriptMessageBoxClient
+ virtual std::wstring GetMessageBoxTitle(const GURL& frame_url,
+ bool is_alert);
+ virtual gfx::NativeWindow GetMessageBoxRootWindow();
+ virtual void OnMessageBoxClosed(IPC::Message* reply_msg,
+ bool success,
+ const std::wstring& prompt);
+ virtual void SetSuppressMessageBoxes(bool suppress_message_boxes) {}
+ virtual TabContents* AsTabContents() { return NULL; }
+
private:
friend class ProcessCreationQueue;