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

Unified Diff: chrome/browser/chrome_content_browser_client.h

Issue 7096016: Remove JS dialog dependency from content. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: one more DEPS item removal Created 9 years, 7 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/chrome_content_browser_client.h
diff --git a/chrome/browser/chrome_content_browser_client.h b/chrome/browser/chrome_content_browser_client.h
index 9e54f1b3474f9d766bd607b6ec7b2af7c6359ef7..890f1188729060014003fe5044889ee09c59dda2 100644
--- a/chrome/browser/chrome_content_browser_client.h
+++ b/chrome/browser/chrome_content_browser_client.h
@@ -6,7 +6,10 @@
#define CHROME_BROWSER_CHROME_CONTENT_BROWSER_CLIENT_H_
#pragma once
+#include <map>
+
#include "base/compiler_specific.h"
+#include "base/time.h"
#include "content/browser/content_browser_client.h"
class QuotaPermissionContext;
@@ -15,6 +18,9 @@ namespace chrome {
class ChromeContentBrowserClient : public content::ContentBrowserClient {
public:
+ ChromeContentBrowserClient();
+ ~ChromeContentBrowserClient();
+
virtual void RenderViewHostCreated(RenderViewHost* render_view_host) OVERRIDE;
virtual void BrowserRenderProcessHostCreated(
BrowserRenderProcessHost* host) OVERRIDE;
@@ -46,10 +52,37 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
net::CookieOptions* options) OVERRIDE;
virtual QuotaPermissionContext* CreateQuotaPermissionContext() OVERRIDE;
virtual void RevealFolderInOS(const FilePath& path) OVERRIDE;
+ virtual void RunJavaScriptDialog(content::JavaScriptDialogDelegate* delegate,
+ const GURL& frame_url,
+ int dialog_flags,
+ const string16& message_text,
+ const string16& default_prompt_text,
+ IPC::Message* reply_message,
+ bool* did_suppress_message,
+ Profile* profile) OVERRIDE;
+ virtual void RunBeforeUnloadDialog(
+ content::JavaScriptDialogDelegate* delegate,
+ const string16& message_text,
+ IPC::Message* reply_msg) OVERRIDE;
+ virtual void ResetJavaScriptState(
+ content::JavaScriptDialogDelegate* delegate) OVERRIDE;
+
#if defined(OS_POSIX) && !defined(OS_MACOSX)
// Can return an optional fd for crash handling, otherwise returns -1.
virtual int GetCrashSignalFD(const std::string& process_type) OVERRIDE;
#endif
+
+ private:
+ class JavaScriptDialogDelegateProxy;
+
+ JavaScriptDialogDelegateProxy* ProxyForDelegate(
+ content::JavaScriptDialogDelegate* delegate);
+
+ // Mapping between the JavaScriptDialogDelegates and their proxies. The key is
+ // a void* because the pointer is just a cookie and is never dereferenced.
+ typedef std::map<void*, JavaScriptDialogDelegateProxy*>
+ JavaScriptDialogProxyMap;
+ JavaScriptDialogProxyMap javascript_dialog_proxies_;
};
} // namespace chrome

Powered by Google App Engine
This is Rietveld 408576698