summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkoz@chromium.org <koz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-27 05:52:58 +0000
committerkoz@chromium.org <koz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-27 05:52:58 +0000
commita00fe69ddb6d23223472ae5d52451f9b2140ad25 (patch)
tree7a3ab655f51232e630579d376f55ba3a546cb01f
parentb40d5cb10fb3f094033083d060397898eaaa022a (diff)
downloadchromium_src-a00fe69ddb6d23223472ae5d52451f9b2140ad25.zip
chromium_src-a00fe69ddb6d23223472ae5d52451f9b2140ad25.tar.gz
chromium_src-a00fe69ddb6d23223472ae5d52451f9b2140ad25.tar.bz2
Add new versions of DidCreateScriptContext() with extension_group.
This is the first of a two part change to plumb the extension_group parameter from WebKit into ExtensionDispatcher::DidCreateScriptContext(). BUG= TEST=chrome still compiles Review URL: http://codereview.chromium.org/9395071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123713 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/renderer/chrome_content_renderer_client.cc6
-rw-r--r--chrome/renderer/chrome_content_renderer_client.h1
-rw-r--r--chrome/renderer/extensions/extension_dispatcher.cc13
-rw-r--r--chrome/renderer/extensions/extension_dispatcher.h1
-rw-r--r--content/public/renderer/content_renderer_client.h1
-rw-r--r--content/renderer/mock_content_renderer_client.cc3
-rw-r--r--content/renderer/mock_content_renderer_client.h1
-rw-r--r--content/renderer/render_view_impl.cc10
-rw-r--r--content/renderer/render_view_impl.h5
-rw-r--r--content/shell/shell_content_renderer_client.cc3
-rw-r--r--content/shell/shell_content_renderer_client.h1
11 files changed, 35 insertions, 10 deletions
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc
index 059e338..20f7a19 100644
--- a/chrome/renderer/chrome_content_renderer_client.cc
+++ b/chrome/renderer/chrome_content_renderer_client.cc
@@ -717,8 +717,10 @@ bool ChromeContentRendererClient::ShouldPumpEventsDuringCookieMessage() {
}
void ChromeContentRendererClient::DidCreateScriptContext(
- WebFrame* frame, v8::Handle<v8::Context> context, int world_id) {
- extension_dispatcher_->DidCreateScriptContext(frame, context, world_id);
+ WebFrame* frame, v8::Handle<v8::Context> context, int extension_group,
+ int world_id) {
+ extension_dispatcher_->DidCreateScriptContext(
+ frame, context, extension_group, world_id);
}
void ChromeContentRendererClient::WillReleaseScriptContext(
diff --git a/chrome/renderer/chrome_content_renderer_client.h b/chrome/renderer/chrome_content_renderer_client.h
index 40846e8..6cbf7d9 100644
--- a/chrome/renderer/chrome_content_renderer_client.h
+++ b/chrome/renderer/chrome_content_renderer_client.h
@@ -83,6 +83,7 @@ class ChromeContentRendererClient : public content::ContentRendererClient {
virtual bool ShouldPumpEventsDuringCookieMessage() OVERRIDE;
virtual void DidCreateScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,
+ int extension_group,
int world_id) OVERRIDE;
virtual void WillReleaseScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,
diff --git a/chrome/renderer/extensions/extension_dispatcher.cc b/chrome/renderer/extensions/extension_dispatcher.cc
index 01a5af3..f357830 100644
--- a/chrome/renderer/extensions/extension_dispatcher.cc
+++ b/chrome/renderer/extensions/extension_dispatcher.cc
@@ -288,7 +288,7 @@ namespace {
//
// TODO(koz): Plumb extension_group through to AllowScriptExtension() from
// WebKit.
-static int hack_DidCreateScriptContext_extension_group = 0;
+static int g_hack_extension_group = 0;
}
@@ -297,7 +297,7 @@ bool ExtensionDispatcher::AllowScriptExtension(
const std::string& v8_extension_name,
int extension_group,
int world_id) {
- hack_DidCreateScriptContext_extension_group = extension_group;
+ g_hack_extension_group = extension_group;
// NULL in unit tests.
if (!RenderThread::Get())
@@ -350,14 +350,17 @@ bool ExtensionDispatcher::AllowScriptExtension(
}
void ExtensionDispatcher::DidCreateScriptContext(
- WebFrame* frame, v8::Handle<v8::Context> v8_context, int world_id) {
+ WebFrame* frame, v8::Handle<v8::Context> v8_context, int extension_group,
+ int world_id) {
+ // TODO(koz): If the caller didn't pass extension_group, use the last value.
+ if (extension_group == -1)
+ extension_group = g_hack_extension_group;
ChromeV8Context* context =
new ChromeV8Context(
v8_context,
frame,
GetExtensionID(frame, world_id),
- ExtensionGroupToContextType(
- hack_DidCreateScriptContext_extension_group));
+ ExtensionGroupToContextType(extension_group));
v8_context_set_.Add(context);
const Extension* extension = extensions_.GetByID(context->extension_id());
diff --git a/chrome/renderer/extensions/extension_dispatcher.h b/chrome/renderer/extensions/extension_dispatcher.h
index 6e89a05..5f42c87 100644
--- a/chrome/renderer/extensions/extension_dispatcher.h
+++ b/chrome/renderer/extensions/extension_dispatcher.h
@@ -68,6 +68,7 @@ class ExtensionDispatcher : public content::RenderProcessObserver {
void DidCreateScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,
+ int extension_group,
int world_id);
void WillReleaseScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,
diff --git a/content/public/renderer/content_renderer_client.h b/content/public/renderer/content_renderer_client.h
index 58f3fe7..10b5902 100644
--- a/content/public/renderer/content_renderer_client.h
+++ b/content/public/renderer/content_renderer_client.h
@@ -143,6 +143,7 @@ class ContentRendererClient {
// See the corresponding functions in WebKit::WebFrameClient.
virtual void DidCreateScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,
+ int extension_group,
int world_id) = 0;
virtual void WillReleaseScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context>,
diff --git a/content/renderer/mock_content_renderer_client.cc b/content/renderer/mock_content_renderer_client.cc
index 5f9376e..c86d0ac 100644
--- a/content/renderer/mock_content_renderer_client.cc
+++ b/content/renderer/mock_content_renderer_client.cc
@@ -89,7 +89,8 @@ bool MockContentRendererClient::ShouldPumpEventsDuringCookieMessage() {
}
void MockContentRendererClient::DidCreateScriptContext(
- WebKit::WebFrame* frame, v8::Handle<v8::Context> context, int world_id) {
+ WebKit::WebFrame* frame, v8::Handle<v8::Context> context,
+ int extension_group, int world_id) {
}
void MockContentRendererClient::WillReleaseScriptContext(
diff --git a/content/renderer/mock_content_renderer_client.h b/content/renderer/mock_content_renderer_client.h
index bb1cb2f..dfde022 100644
--- a/content/renderer/mock_content_renderer_client.h
+++ b/content/renderer/mock_content_renderer_client.h
@@ -56,6 +56,7 @@ class MockContentRendererClient : public ContentRendererClient {
virtual bool ShouldPumpEventsDuringCookieMessage() OVERRIDE;
virtual void DidCreateScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,
+ int extension_group,
int world_id) OVERRIDE;
virtual void WillReleaseScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index 64162139..6d9d687 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -3122,9 +3122,17 @@ void RenderViewImpl::didExhaustMemoryAvailableForScript(WebFrame* frame) {
void RenderViewImpl::didCreateScriptContext(WebFrame* frame,
v8::Handle<v8::Context> context,
+ int extension_group,
int world_id) {
content::GetContentClient()->renderer()->DidCreateScriptContext(
- frame, context, world_id);
+ frame, context, extension_group, world_id);
+}
+
+void RenderViewImpl::didCreateScriptContext(WebFrame* frame,
+ v8::Handle<v8::Context> context,
+ int world_id) {
+ content::GetContentClient()->renderer()->DidCreateScriptContext(
+ frame, context, -1, world_id);
}
void RenderViewImpl::willReleaseScriptContext(WebFrame* frame,
diff --git a/content/renderer/render_view_impl.h b/content/renderer/render_view_impl.h
index c79204c..f52ac68 100644
--- a/content/renderer/render_view_impl.h
+++ b/content/renderer/render_view_impl.h
@@ -526,6 +526,11 @@ class RenderViewImpl : public RenderWidget,
virtual void didExhaustMemoryAvailableForScript(WebKit::WebFrame* frame);
virtual void didCreateScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context>,
+ int extension_group,
+ int world_id);
+ // TODO(koz): Remove once WebKit no longer calls this.
+ virtual void didCreateScriptContext(WebKit::WebFrame* frame,
+ v8::Handle<v8::Context>,
int world_id);
virtual void willReleaseScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context>,
diff --git a/content/shell/shell_content_renderer_client.cc b/content/shell/shell_content_renderer_client.cc
index 1cbdee5c..2bcb24e 100644
--- a/content/shell/shell_content_renderer_client.cc
+++ b/content/shell/shell_content_renderer_client.cc
@@ -95,7 +95,8 @@ bool ShellContentRendererClient::ShouldPumpEventsDuringCookieMessage() {
}
void ShellContentRendererClient::DidCreateScriptContext(
- WebKit::WebFrame* frame, v8::Handle<v8::Context> context, int world_id) {
+ WebKit::WebFrame* frame, v8::Handle<v8::Context> context,
+ int extension_group, int world_id) {
}
void ShellContentRendererClient::WillReleaseScriptContext(
diff --git a/content/shell/shell_content_renderer_client.h b/content/shell/shell_content_renderer_client.h
index d02deb3..a28f4f0 100644
--- a/content/shell/shell_content_renderer_client.h
+++ b/content/shell/shell_content_renderer_client.h
@@ -57,6 +57,7 @@ class ShellContentRendererClient : public ContentRendererClient {
virtual bool ShouldPumpEventsDuringCookieMessage() OVERRIDE;
virtual void DidCreateScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,
+ int extension_group,
int world_id) OVERRIDE;
virtual void WillReleaseScriptContext(WebKit::WebFrame* frame,
v8::Handle<v8::Context> context,