summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/extensions
diff options
context:
space:
mode:
authoraa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-08 01:13:18 +0000
committeraa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-09-08 01:13:18 +0000
commitc2a4159fde2513225efe7267b416402287a709d4 (patch)
treef21dce2350f0fe5780f5f7a23087b88d88037a47 /chrome/renderer/extensions
parent4223df5774c08d900fe3fe0acedcd21d23020ba2 (diff)
downloadchromium_src-c2a4159fde2513225efe7267b416402287a709d4.zip
chromium_src-c2a4159fde2513225efe7267b416402287a709d4.tar.gz
chromium_src-c2a4159fde2513225efe7267b416402287a709d4.tar.bz2
Revert r99696 and r99705 due to crashes.
BUG=95667 Review URL: http://codereview.chromium.org/7848009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100067 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/extensions')
-rw-r--r--chrome/renderer/extensions/chrome_app_bindings.cc31
-rw-r--r--chrome/renderer/extensions/chrome_app_bindings.h7
-rw-r--r--chrome/renderer/extensions/chrome_webstore_bindings.cc5
-rw-r--r--chrome/renderer/extensions/event_bindings.cc10
-rw-r--r--chrome/renderer/extensions/event_bindings.h4
-rw-r--r--chrome/renderer/extensions/extension_base.cc6
-rw-r--r--chrome/renderer/extensions/extension_base.h12
-rw-r--r--chrome/renderer/extensions/extension_bindings_context.cc11
-rw-r--r--chrome/renderer/extensions/extension_bindings_context.h11
-rw-r--r--chrome/renderer/extensions/extension_dispatcher.cc (renamed from chrome/renderer/extensions/extension_renderer_context.cc)48
-rw-r--r--chrome/renderer/extensions/extension_dispatcher.h (renamed from chrome/renderer/extensions/extension_renderer_context.h)20
-rw-r--r--chrome/renderer/extensions/extension_helper.cc (renamed from chrome/renderer/extensions/extension_render_view_helper.cc)84
-rw-r--r--chrome/renderer/extensions/extension_helper.h (renamed from chrome/renderer/extensions/extension_render_view_helper.h)23
-rw-r--r--chrome/renderer/extensions/extension_process_bindings.cc27
-rw-r--r--chrome/renderer/extensions/extension_process_bindings.h5
-rw-r--r--chrome/renderer/extensions/renderer_extension_bindings.cc11
-rw-r--r--chrome/renderer/extensions/renderer_extension_bindings.h4
-rw-r--r--chrome/renderer/extensions/user_script_idle_scheduler.cc16
-rw-r--r--chrome/renderer/extensions/user_script_idle_scheduler.h10
-rw-r--r--chrome/renderer/extensions/user_script_slave.cc4
20 files changed, 161 insertions, 188 deletions
diff --git a/chrome/renderer/extensions/chrome_app_bindings.cc b/chrome/renderer/extensions/chrome_app_bindings.cc
index 82f9f41..b52b7ca 100644
--- a/chrome/renderer/extensions/chrome_app_bindings.cc
+++ b/chrome/renderer/extensions/chrome_app_bindings.cc
@@ -12,8 +12,8 @@
#include "base/values.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/extensions/extension_set.h"
-#include "chrome/renderer/extensions/extension_render_view_helper.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
+#include "chrome/renderer/extensions/extension_helper.h"
#include "content/renderer/render_view.h"
#include "content/renderer/v8_value_converter.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h"
@@ -59,8 +59,7 @@ static const char* const kAppExtensionName = "v8/ChromeApp";
class ChromeAppExtensionWrapper : public v8::Extension {
public:
- explicit ChromeAppExtensionWrapper(
- ExtensionRendererContext* extension_renderer_context) :
+ explicit ChromeAppExtensionWrapper(ExtensionDispatcher* extension_dispatcher) :
v8::Extension(kAppExtensionName,
"var chrome;"
"if (!chrome)"
@@ -77,11 +76,11 @@ class ChromeAppExtensionWrapper : public v8::Extension {
" this.getDetailsForFrame = GetDetailsForFrame;"
" };"
"}") {
- extension_renderer_context_ = extension_renderer_context;
+ extension_dispatcher_ = extension_dispatcher;
}
~ChromeAppExtensionWrapper() {
- extension_renderer_context_ = NULL;
+ extension_dispatcher_ = NULL;
}
virtual v8::Handle<v8::FunctionTemplate> GetNativeFunction(
@@ -111,11 +110,10 @@ class ChromeAppExtensionWrapper : public v8::Extension {
return v8::False();
const ::Extension* extension =
- extension_renderer_context_->extensions()->GetByURL(
- frame->document().url());
+ extension_dispatcher_->extensions()->GetByURL(frame->document().url());
bool has_web_extent = extension &&
- extension_renderer_context_->IsApplicationActive(extension->id());
+ extension_dispatcher_->IsApplicationActive(extension->id());
return v8::Boolean::New(has_web_extent);
}
@@ -129,8 +127,7 @@ class ChromeAppExtensionWrapper : public v8::Extension {
return v8::Undefined();
string16 error;
- ExtensionRenderViewHelper* helper =
- ExtensionRenderViewHelper::Get(render_view);
+ ExtensionHelper* helper = ExtensionHelper::Get(render_view);
if (!helper->InstallWebApplicationUsingDefinitionFile(frame, &error))
v8::ThrowException(v8::String::New(UTF16ToUTF8(error).c_str()));
@@ -169,8 +166,7 @@ class ChromeAppExtensionWrapper : public v8::Extension {
static v8::Handle<v8::Value> GetDetailsForFrameImpl(const WebFrame* frame) {
const ::Extension* extension =
- extension_renderer_context_->extensions()->GetByURL(
- frame->document().url());
+ extension_dispatcher_->extensions()->GetByURL(frame->document().url());
if (!extension)
return v8::Null();
@@ -182,15 +178,14 @@ class ChromeAppExtensionWrapper : public v8::Extension {
frame->mainWorldScriptContext());
}
- static ExtensionRendererContext* extension_renderer_context_;
+ static ExtensionDispatcher* extension_dispatcher_;
};
-ExtensionRendererContext*
- ChromeAppExtensionWrapper::extension_renderer_context_;
+ExtensionDispatcher* ChromeAppExtensionWrapper::extension_dispatcher_;
v8::Extension* ChromeAppExtension::Get(
- ExtensionRendererContext* extension_renderer_context) {
- return new ChromeAppExtensionWrapper(extension_renderer_context);
+ ExtensionDispatcher* extension_dispatcher) {
+ return new ChromeAppExtensionWrapper(extension_dispatcher);
}
} // namespace extensions_v8
diff --git a/chrome/renderer/extensions/chrome_app_bindings.h b/chrome/renderer/extensions/chrome_app_bindings.h
index e58ebd8..8e7da1b 100644
--- a/chrome/renderer/extensions/chrome_app_bindings.h
+++ b/chrome/renderer/extensions/chrome_app_bindings.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright (c) 2010 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.
@@ -12,7 +12,7 @@
#define CHROME_RENDERER_EXTENSIONS_CHROME_APP_BINDINGS_H_
#pragma once
-class ExtensionRendererContext;
+class ExtensionDispatcher;
namespace v8 {
class Extension;
@@ -22,8 +22,7 @@ namespace extensions_v8 {
class ChromeAppExtension {
public:
- static v8::Extension* Get(
- ExtensionRendererContext* extension_renderer_context);
+ static v8::Extension* Get(ExtensionDispatcher* extension_dispatcher);
};
} // namespace extensions_v8
diff --git a/chrome/renderer/extensions/chrome_webstore_bindings.cc b/chrome/renderer/extensions/chrome_webstore_bindings.cc
index ecc4d57..74e3f95 100644
--- a/chrome/renderer/extensions/chrome_webstore_bindings.cc
+++ b/chrome/renderer/extensions/chrome_webstore_bindings.cc
@@ -7,7 +7,7 @@
#include "base/lazy_instance.h"
#include "base/string_util.h"
#include "chrome/common/extensions/extension.h"
-#include "chrome/renderer/extensions/extension_render_view_helper.h"
+#include "chrome/renderer/extensions/extension_helper.h"
#include "content/renderer/render_view.h"
#include "googleurl/src/gurl.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h"
@@ -162,8 +162,7 @@ class ExtensionImpl : public v8::Extension {
}
}
- ExtensionRenderViewHelper* helper =
- ExtensionRenderViewHelper::Get(render_view);
+ ExtensionHelper* helper = ExtensionHelper::Get(render_view);
helper->InlineWebstoreInstall(
install_id, webstore_item_id, frame->document().url());
return v8::Undefined();
diff --git a/chrome/renderer/extensions/event_bindings.cc b/chrome/renderer/extensions/event_bindings.cc
index 679d85c..ed65e3f 100644
--- a/chrome/renderer/extensions/event_bindings.cc
+++ b/chrome/renderer/extensions/event_bindings.cc
@@ -15,8 +15,8 @@
#include "chrome/renderer/extensions/event_bindings.h"
#include "chrome/renderer/extensions/extension_base.h"
#include "chrome/renderer/extensions/extension_bindings_context.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "chrome/renderer/extensions/extension_process_bindings.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
#include "chrome/renderer/extensions/js_only_v8_extensions.h"
#include "chrome/renderer/extensions/user_script_slave.h"
#include "content/renderer/render_thread.h"
@@ -59,10 +59,10 @@ static EventListenerCounts& GetListenerCounts(const std::string& extension_id) {
class ExtensionImpl : public ExtensionBase {
public:
- explicit ExtensionImpl(ExtensionRendererContext* context)
+ explicit ExtensionImpl(ExtensionDispatcher* dispatcher)
: ExtensionBase(EventBindings::kName,
GetStringResource(IDR_EVENT_BINDINGS_JS),
- 0, NULL, context) {
+ 0, NULL, dispatcher) {
}
~ExtensionImpl() {}
@@ -167,8 +167,8 @@ class ExtensionImpl : public ExtensionBase {
const char* EventBindings::kName = "chrome/EventBindings";
-v8::Extension* EventBindings::Get(ExtensionRendererContext* context) {
- static v8::Extension* extension = new ExtensionImpl(context);
+v8::Extension* EventBindings::Get(ExtensionDispatcher* dispatcher) {
+ static v8::Extension* extension = new ExtensionImpl(dispatcher);
return extension;
}
diff --git a/chrome/renderer/extensions/event_bindings.h b/chrome/renderer/extensions/event_bindings.h
index bdf9c70..40e6d2b 100644
--- a/chrome/renderer/extensions/event_bindings.h
+++ b/chrome/renderer/extensions/event_bindings.h
@@ -6,7 +6,7 @@
#define CHROME_RENDERER_EXTENSIONS_EVENT_BINDINGS_H_
#pragma once
-class ExtensionRendererContext;
+class ExtensionDispatcher;
class RenderThreadBase;
namespace v8 {
@@ -18,7 +18,7 @@ class EventBindings {
public:
static const char* kName; // The v8::Extension name, for dependencies.
- static v8::Extension* Get(ExtensionRendererContext* context);
+ static v8::Extension* Get(ExtensionDispatcher* dispatcher);
// Allow RenderThread to be mocked out.
static void SetRenderThread(RenderThreadBase* thread);
diff --git a/chrome/renderer/extensions/extension_base.cc b/chrome/renderer/extensions/extension_base.cc
index 0529a51..002c3b1 100644
--- a/chrome/renderer/extensions/extension_base.cc
+++ b/chrome/renderer/extensions/extension_base.cc
@@ -10,7 +10,7 @@
#include "base/string_util.h"
#include "chrome/common/extensions/extension.h"
#include "chrome/common/extensions/extension_set.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "content/renderer/render_view.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h"
@@ -69,7 +69,7 @@ const Extension* ExtensionBase::GetExtensionForCurrentRenderView() const {
return NULL; // this can happen as a tab is closing.
GURL url = renderview->webview()->mainFrame()->document().url();
- const ExtensionSet* extensions = extension_renderer_context_->extensions();
+ const ExtensionSet* extensions = extension_dispatcher_->extensions();
if (!extensions->ExtensionBindingsAllowed(url))
return NULL;
@@ -80,7 +80,7 @@ bool ExtensionBase::CheckPermissionForCurrentRenderView(
const std::string& function_name) const {
const ::Extension* extension = GetExtensionForCurrentRenderView();
if (extension &&
- extension_renderer_context_->IsExtensionActive(extension->id()) &&
+ extension_dispatcher_->IsExtensionActive(extension->id()) &&
extension->HasAPIPermission(function_name))
return true;
diff --git a/chrome/renderer/extensions/extension_base.h b/chrome/renderer/extensions/extension_base.h
index 0aa2cef..9e9efb1 100644
--- a/chrome/renderer/extensions/extension_base.h
+++ b/chrome/renderer/extensions/extension_base.h
@@ -12,7 +12,7 @@
#include <string>
class Extension;
-class ExtensionRendererContext;
+class ExtensionDispatcher;
class RenderView;
namespace WebKit {
@@ -29,9 +29,9 @@ class ExtensionBase : public v8::Extension {
const char* source,
int dep_count,
const char** deps,
- ExtensionRendererContext* extension_renderer_context)
+ ExtensionDispatcher* extension_dispatcher)
: v8::Extension(name, source, dep_count, deps),
- extension_renderer_context_(extension_renderer_context) {
+ extension_dispatcher_(extension_dispatcher) {
}
// Derived classes should call this at the end of their implementation in
@@ -41,9 +41,7 @@ class ExtensionBase : public v8::Extension {
GetNativeFunction(v8::Handle<v8::String> name);
// TODO(jstritar): Used for testing http://crbug.com/91582. Remove when done.
- ExtensionRendererContext* extension_renderer_context() {
- return extension_renderer_context_;
- }
+ ExtensionDispatcher* extension_dispatcher() { return extension_dispatcher_; }
// Returns a hidden variable for use by the bindings in the specified context
// that is unreachable by the page for the current context.
@@ -75,7 +73,7 @@ class ExtensionBase : public v8::Extension {
// Returns the chromeHidden object for the current context.
static v8::Handle<v8::Value> GetChromeHidden(const v8::Arguments& args);
- ExtensionRendererContext* extension_renderer_context_;
+ ExtensionDispatcher* extension_dispatcher_;
private:
// Helper to print from bindings javascript.
diff --git a/chrome/renderer/extensions/extension_bindings_context.cc b/chrome/renderer/extensions/extension_bindings_context.cc
index de96c63..e6dad05 100644
--- a/chrome/renderer/extensions/extension_bindings_context.cc
+++ b/chrome/renderer/extensions/extension_bindings_context.cc
@@ -16,7 +16,7 @@
#include "chrome/common/extensions/extension_set.h"
#include "chrome/renderer/chrome_render_process_observer.h"
#include "chrome/renderer/extensions/extension_base.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "chrome/renderer/extensions/user_script_slave.h"
#include "content/common/url_constants.h"
#include "content/renderer/render_view.h"
@@ -59,7 +59,7 @@ static bool HasSufficientPermissions(RenderView* render_view,
void ExtensionBindingsContext::HandleV8ContextCreated(
WebKit::WebFrame* web_frame,
const v8::Handle<v8::Context>& v8_context,
- ExtensionRendererContext* extension_renderer_context,
+ ExtensionDispatcher* extension_dispatcher,
int isolated_world_id) {
std::string extension_id;
@@ -72,14 +72,14 @@ void ExtensionBindingsContext::HandleV8ContextCreated(
if (!ds)
ds = web_frame->dataSource();
GURL url = ds->request().url();
- const ExtensionSet* extensions = extension_renderer_context->extensions();
+ const ExtensionSet* extensions = extension_dispatcher->extensions();
extension_id = extensions->GetIdByURL(url);
if (!extensions->ExtensionBindingsAllowed(url))
return;
} else {
extension_id =
- extension_renderer_context->user_script_slave()->
+ extension_dispatcher->user_script_slave()->
GetExtensionIdForIsolatedWorld(isolated_world_id);
}
@@ -92,8 +92,7 @@ void ExtensionBindingsContext::HandleV8ContextCreated(
v8::HandleScope handle_scope;
v8::Handle<v8::Value> argv[3];
argv[0] = v8::String::New(extension_id.c_str());
- argv[1] = v8::Boolean::New(
- extension_renderer_context->is_extension_process());
+ argv[1] = v8::Boolean::New(extension_dispatcher->is_extension_process());
argv[2] = v8::Boolean::New(
ChromeRenderProcessObserver::is_incognito_process());
instance->CallChromeHiddenMethod("dispatchOnLoad", arraysize(argv), argv);
diff --git a/chrome/renderer/extensions/extension_bindings_context.h b/chrome/renderer/extensions/extension_bindings_context.h
index 8f421e8..44f8b0a 100644
--- a/chrome/renderer/extensions/extension_bindings_context.h
+++ b/chrome/renderer/extensions/extension_bindings_context.h
@@ -18,18 +18,17 @@ namespace WebKit {
class WebFrame;
}
-class ExtensionRendererContext;
+class ExtensionDispatcher;
class GURL;
class RenderView;
// A v8 context that contains extension bindings.
class ExtensionBindingsContext {
public:
- static void HandleV8ContextCreated(
- WebKit::WebFrame* frame,
- const v8::Handle<v8::Context>& v8_context,
- ExtensionRendererContext* extension_renderer_context,
- int isolated_world_id);
+ static void HandleV8ContextCreated(WebKit::WebFrame* frame,
+ const v8::Handle<v8::Context>& v8_context,
+ ExtensionDispatcher* extension_dispatcher,
+ int isolated_world_id);
static void HandleV8ContextDestroyed(WebKit::WebFrame* frame);
diff --git a/chrome/renderer/extensions/extension_renderer_context.cc b/chrome/renderer/extensions/extension_dispatcher.cc
index 1f3433b..267e5a7 100644
--- a/chrome/renderer/extensions/extension_renderer_context.cc
+++ b/chrome/renderer/extensions/extension_dispatcher.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/renderer/extensions/extension_renderer_context.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "base/command_line.h"
#include "chrome/common/child_process_logging.h"
@@ -38,7 +38,7 @@ using WebKit::WebFrame;
using WebKit::WebSecurityPolicy;
using WebKit::WebString;
-ExtensionRendererContext::ExtensionRendererContext()
+ExtensionDispatcher::ExtensionDispatcher()
: is_webkit_initialized_(false) {
std::string type_str = CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
switches::kProcessType);
@@ -53,13 +53,13 @@ ExtensionRendererContext::ExtensionRendererContext()
user_script_slave_.reset(new UserScriptSlave(&extensions_));
}
-ExtensionRendererContext::~ExtensionRendererContext() {
+ExtensionDispatcher::~ExtensionDispatcher() {
}
-bool ExtensionRendererContext::OnControlMessageReceived(
+bool ExtensionDispatcher::OnControlMessageReceived(
const IPC::Message& message) {
bool handled = true;
- IPC_BEGIN_MESSAGE_MAP(ExtensionRendererContext, message)
+ IPC_BEGIN_MESSAGE_MAP(ExtensionDispatcher, message)
IPC_MESSAGE_HANDLER(ExtensionMsg_MessageInvoke, OnMessageInvoke)
IPC_MESSAGE_HANDLER(ExtensionMsg_SetFunctionNames, OnSetFunctionNames)
IPC_MESSAGE_HANDLER(ExtensionMsg_Loaded, OnLoaded)
@@ -76,7 +76,7 @@ bool ExtensionRendererContext::OnControlMessageReceived(
return handled;
}
-void ExtensionRendererContext::WebKitInitialized() {
+void ExtensionDispatcher::WebKitInitialized() {
// For extensions, we want to ensure we call the IdleHandler every so often,
// even if the extension keeps up activity.
if (is_extension_process_) {
@@ -111,7 +111,7 @@ void ExtensionRendererContext::WebKitInitialized() {
is_webkit_initialized_ = true;
}
-void ExtensionRendererContext::IdleNotification() {
+void ExtensionDispatcher::IdleNotification() {
if (is_extension_process_) {
// Dampen the forced delay as well if the extension stays idle for long
// periods of time.
@@ -125,14 +125,14 @@ void ExtensionRendererContext::IdleNotification() {
}
}
-void ExtensionRendererContext::OnSetFunctionNames(
+void ExtensionDispatcher::OnSetFunctionNames(
const std::vector<std::string>& names) {
function_names_.clear();
for (size_t i = 0; i < names.size(); ++i)
function_names_.insert(names[i]);
}
-void ExtensionRendererContext::OnMessageInvoke(const std::string& extension_id,
+void ExtensionDispatcher::OnMessageInvoke(const std::string& extension_id,
const std::string& function_name,
const ListValue& args,
const GURL& event_url) {
@@ -147,8 +147,7 @@ void ExtensionRendererContext::OnMessageInvoke(const std::string& extension_id,
}
}
-void ExtensionRendererContext::OnLoaded(
- const ExtensionMsg_Loaded_Params& params) {
+void ExtensionDispatcher::OnLoaded(const ExtensionMsg_Loaded_Params& params) {
scoped_refptr<const Extension> extension(params.ConvertToExtension());
if (!extension) {
// This can happen if extension parsing fails for any reason. One reason
@@ -161,7 +160,7 @@ void ExtensionRendererContext::OnLoaded(
extensions_.Insert(extension);
}
-void ExtensionRendererContext::OnUnloaded(const std::string& id) {
+void ExtensionDispatcher::OnUnloaded(const std::string& id) {
extensions_.Remove(id);
// If the extension is later reloaded with a different set of permissions,
// we'd like it to get a new isolated world ID, so that it can pick up the
@@ -169,24 +168,24 @@ void ExtensionRendererContext::OnUnloaded(const std::string& id) {
user_script_slave_->RemoveIsolatedWorld(id);
}
-void ExtensionRendererContext::OnSetScriptingWhitelist(
+void ExtensionDispatcher::OnSetScriptingWhitelist(
const Extension::ScriptingWhitelist& extension_ids) {
Extension::SetScriptingWhitelist(extension_ids);
}
-bool ExtensionRendererContext::IsApplicationActive(
+bool ExtensionDispatcher::IsApplicationActive(
const std::string& extension_id) const {
return active_application_ids_.find(extension_id) !=
active_application_ids_.end();
}
-bool ExtensionRendererContext::IsExtensionActive(
+bool ExtensionDispatcher::IsExtensionActive(
const std::string& extension_id) const {
return active_extension_ids_.find(extension_id) !=
active_extension_ids_.end();
}
-bool ExtensionRendererContext::AllowScriptExtension(
+bool ExtensionDispatcher::AllowScriptExtension(
WebFrame* frame,
const std::string& v8_extension_name,
int extension_group) {
@@ -220,12 +219,12 @@ bool ExtensionRendererContext::AllowScriptExtension(
}
-void ExtensionRendererContext::OnActivateApplication(
+void ExtensionDispatcher::OnActivateApplication(
const std::string& extension_id) {
active_application_ids_.insert(extension_id);
}
-void ExtensionRendererContext::OnActivateExtension(
+void ExtensionDispatcher::OnActivateExtension(
const std::string& extension_id) {
active_extension_ids_.insert(extension_id);
@@ -244,8 +243,7 @@ void ExtensionRendererContext::OnActivateExtension(
InitOriginPermissions(extension);
}
-void ExtensionRendererContext::InitOriginPermissions(
- const Extension* extension) {
+void ExtensionDispatcher::InitOriginPermissions(const Extension* extension) {
// TODO(jstritar): We should try to remove this special case. Also, these
// whitelist entries need to be updated when the kManagement permission
// changes.
@@ -262,7 +260,7 @@ void ExtensionRendererContext::InitOriginPermissions(
extension->GetActivePermissions()->explicit_hosts());
}
-void ExtensionRendererContext::UpdateOriginPermissions(
+void ExtensionDispatcher::UpdateOriginPermissions(
UpdatedExtensionPermissionsInfo::Reason reason,
const Extension* extension,
const URLPatternSet& origins) {
@@ -288,7 +286,7 @@ void ExtensionRendererContext::UpdateOriginPermissions(
}
}
-void ExtensionRendererContext::OnUpdatePermissions(
+void ExtensionDispatcher::OnUpdatePermissions(
int reason_id,
const std::string& extension_id,
const ExtensionAPIPermissionSet& apis,
@@ -317,14 +315,14 @@ void ExtensionRendererContext::OnUpdatePermissions(
UpdateOriginPermissions(reason, extension, explicit_hosts);
}
-void ExtensionRendererContext::OnUpdateUserScripts(
+void ExtensionDispatcher::OnUpdateUserScripts(
base::SharedMemoryHandle scripts) {
DCHECK(base::SharedMemory::IsHandleValid(scripts)) << "Bad scripts handle";
user_script_slave_->UpdateScripts(scripts);
UpdateActiveExtensions();
}
-void ExtensionRendererContext::UpdateActiveExtensions() {
+void ExtensionDispatcher::UpdateActiveExtensions() {
// In single-process mode, the browser process reports the active extensions.
if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kSingleProcess))
return;
@@ -334,7 +332,7 @@ void ExtensionRendererContext::UpdateActiveExtensions() {
child_process_logging::SetActiveExtensions(active_extensions);
}
-void ExtensionRendererContext::RegisterExtension(v8::Extension* extension,
+void ExtensionDispatcher::RegisterExtension(v8::Extension* extension,
bool restrict_to_extensions) {
if (restrict_to_extensions)
restricted_v8_extensions_.insert(extension->name());
diff --git a/chrome/renderer/extensions/extension_renderer_context.h b/chrome/renderer/extensions/extension_dispatcher.h
index 58a022f..84a62cd 100644
--- a/chrome/renderer/extensions/extension_renderer_context.h
+++ b/chrome/renderer/extensions/extension_dispatcher.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CHROME_RENDERER_EXTENSIONS_EXTENSION_RENDERER_CONTEXT_H_
-#define CHROME_RENDERER_EXTENSIONS_EXTENSION_RENDERER_CONTEXT_H_
+#ifndef CHROME_RENDERER_EXTENSIONS_EXTENSION_DISPATCHER_H_
+#define CHROME_RENDERER_EXTENSIONS_EXTENSION_DISPATCHER_H_
#pragma once
#include <set>
@@ -12,8 +12,8 @@
#include "base/shared_memory.h"
#include "base/timer.h"
-#include "chrome/common/extensions/extension_set.h"
#include "content/renderer/render_process_observer.h"
+#include "chrome/common/extensions/extension_set.h"
class GURL;
class RenderThread;
@@ -34,12 +34,12 @@ namespace v8 {
class Extension;
}
-// Render-process level context for the extension system. Stores process-level
-// state and routes process-level IPC mesages.
-class ExtensionRendererContext : public RenderProcessObserver {
+// Dispatches extension control messages sent to the renderer and stores
+// renderer extension related state.
+class ExtensionDispatcher : public RenderProcessObserver {
public:
- ExtensionRendererContext();
- virtual ~ExtensionRendererContext();
+ ExtensionDispatcher();
+ virtual ~ExtensionDispatcher();
const std::set<std::string>& function_names() const {
return function_names_;
@@ -127,7 +127,7 @@ class ExtensionRendererContext : public RenderProcessObserver {
// True once WebKit has been initialized (and it is therefore safe to poke).
bool is_webkit_initialized_;
- DISALLOW_COPY_AND_ASSIGN(ExtensionRendererContext);
+ DISALLOW_COPY_AND_ASSIGN(ExtensionDispatcher);
};
-#endif // CHROME_RENDERER_EXTENSIONS_EXTENSION_RENDERER_CONTEXT_H_
+#endif // CHROME_RENDERER_EXTENSIONS_EXTENSION_DISPATCHER_H_
diff --git a/chrome/renderer/extensions/extension_render_view_helper.cc b/chrome/renderer/extensions/extension_helper.cc
index 8654b7d..0f0bae5 100644
--- a/chrome/renderer/extensions/extension_render_view_helper.cc
+++ b/chrome/renderer/extensions/extension_helper.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/renderer/extensions/extension_render_view_helper.h"
+#include "chrome/renderer/extensions/extension_helper.h"
#include "base/command_line.h"
#include "base/lazy_instance.h"
@@ -15,18 +15,18 @@
#include "chrome/renderer/extensions/chrome_webstore_bindings.h"
#include "chrome/renderer/extensions/event_bindings.h"
#include "chrome/renderer/extensions/extension_bindings_context.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "chrome/renderer/extensions/extension_process_bindings.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
#include "chrome/renderer/extensions/user_script_idle_scheduler.h"
#include "chrome/renderer/extensions/user_script_slave.h"
#include "content/common/json_value_serializer.h"
#include "content/renderer/render_view.h"
+#include "webkit/glue/image_resource_fetcher.h"
+#include "webkit/glue/resource_fetcher.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebConsoleMessage.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebFrame.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebURLRequest.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebView.h"
-#include "webkit/glue/image_resource_fetcher.h"
-#include "webkit/glue/resource_fetcher.h"
using WebKit::WebConsoleMessage;
using WebKit::WebDataSource;
@@ -45,21 +45,20 @@ typedef std::map<WebFrame*, UserScriptIdleScheduler*> SchedulerMap;
static base::LazyInstance<SchedulerMap> g_schedulers(base::LINKER_INITIALIZED);
}
-ExtensionRenderViewHelper::ExtensionRenderViewHelper(
- RenderView* render_view,
- ExtensionRendererContext* extension_renderer_context)
+ExtensionHelper::ExtensionHelper(RenderView* render_view,
+ ExtensionDispatcher* extension_dispatcher)
: RenderViewObserver(render_view),
- RenderViewObserverTracker<ExtensionRenderViewHelper>(render_view),
- extension_renderer_context_(extension_renderer_context),
+ RenderViewObserverTracker<ExtensionHelper>(render_view),
+ extension_dispatcher_(extension_dispatcher),
pending_app_icon_requests_(0),
view_type_(ViewType::INVALID),
browser_window_id_(-1) {
}
-ExtensionRenderViewHelper::~ExtensionRenderViewHelper() {
+ExtensionHelper::~ExtensionHelper() {
}
-bool ExtensionRenderViewHelper::InstallWebApplicationUsingDefinitionFile(
+bool ExtensionHelper::InstallWebApplicationUsingDefinitionFile(
WebFrame* frame, string16* error) {
// There is an issue of drive-by installs with the below implementation. A web
// site could force a user to install an app by timing the dialog to come up
@@ -101,28 +100,26 @@ bool ExtensionRenderViewHelper::InstallWebApplicationUsingDefinitionFile(
app_definition_fetcher_.reset(new ResourceFetcher(
pending_app_info_->manifest_url, render_view()->webview()->mainFrame(),
WebURLRequest::TargetIsSubresource,
- NewCallback(
- this,
- &ExtensionRenderViewHelper::DidDownloadApplicationDefinition)));
+ NewCallback(this, &ExtensionHelper::DidDownloadApplicationDefinition)));
return true;
}
-void ExtensionRenderViewHelper::InlineWebstoreInstall(
+void ExtensionHelper::InlineWebstoreInstall(
int install_id, std::string webstore_item_id, GURL requestor_url) {
Send(new ExtensionHostMsg_InlineWebstoreInstall(
routing_id(), install_id, webstore_item_id, requestor_url));
}
-void ExtensionRenderViewHelper::OnInlineWebstoreInstallResponse(
+void ExtensionHelper::OnInlineWebstoreInstallResponse(
int install_id,
bool success,
const std::string& error) {
ChromeWebstoreExtension::HandleInstallResponse(install_id, success, error);
}
-bool ExtensionRenderViewHelper::OnMessageReceived(const IPC::Message& message) {
+bool ExtensionHelper::OnMessageReceived(const IPC::Message& message) {
bool handled = true;
- IPC_BEGIN_MESSAGE_MAP(ExtensionRenderViewHelper, message)
+ IPC_BEGIN_MESSAGE_MAP(ExtensionHelper, message)
IPC_MESSAGE_HANDLER(ExtensionMsg_Response, OnExtensionResponse)
IPC_MESSAGE_HANDLER(ExtensionMsg_MessageInvoke, OnExtensionMessageInvoke)
IPC_MESSAGE_HANDLER(ExtensionMsg_ExecuteCode, OnExecuteCode)
@@ -138,8 +135,8 @@ bool ExtensionRenderViewHelper::OnMessageReceived(const IPC::Message& message) {
return handled;
}
-void ExtensionRenderViewHelper::DidFinishDocumentLoad(WebFrame* frame) {
- extension_renderer_context_->user_script_slave()->InjectScripts(
+void ExtensionHelper::DidFinishDocumentLoad(WebFrame* frame) {
+ extension_dispatcher_->user_script_slave()->InjectScripts(
frame, UserScript::DOCUMENT_END);
SchedulerMap::iterator i = g_schedulers.Get().find(frame);
@@ -147,25 +144,24 @@ void ExtensionRenderViewHelper::DidFinishDocumentLoad(WebFrame* frame) {
i->second->DidFinishDocumentLoad();
}
-void ExtensionRenderViewHelper::DidFinishLoad(WebKit::WebFrame* frame) {
+void ExtensionHelper::DidFinishLoad(WebKit::WebFrame* frame) {
SchedulerMap::iterator i = g_schedulers.Get().find(frame);
if (i != g_schedulers.Get().end())
i->second->DidFinishLoad();
}
-void ExtensionRenderViewHelper::DidCreateDocumentElement(WebFrame* frame) {
- extension_renderer_context_->user_script_slave()->InjectScripts(
+void ExtensionHelper::DidCreateDocumentElement(WebFrame* frame) {
+ extension_dispatcher_->user_script_slave()->InjectScripts(
frame, UserScript::DOCUMENT_START);
}
-void ExtensionRenderViewHelper::DidStartProvisionalLoad(
- WebKit::WebFrame* frame) {
+void ExtensionHelper::DidStartProvisionalLoad(WebKit::WebFrame* frame) {
SchedulerMap::iterator i = g_schedulers.Get().find(frame);
if (i != g_schedulers.Get().end())
i->second->DidStartProvisionalLoad();
}
-void ExtensionRenderViewHelper::FrameDetached(WebFrame* frame) {
+void ExtensionHelper::FrameDetached(WebFrame* frame) {
// This could be called before DidCreateDataSource, in which case the frame
// won't be in the map.
SchedulerMap::iterator i = g_schedulers.Get().find(frame);
@@ -176,8 +172,7 @@ void ExtensionRenderViewHelper::FrameDetached(WebFrame* frame) {
g_schedulers.Get().erase(i);
}
-void ExtensionRenderViewHelper::DidCreateDataSource(WebFrame* frame,
- WebDataSource* ds) {
+void ExtensionHelper::DidCreateDataSource(WebFrame* frame, WebDataSource* ds) {
// If there are any app-related fetches in progress, they can be cancelled now
// since we have navigated away from the page that created them.
if (!frame->parent()) {
@@ -191,10 +186,10 @@ void ExtensionRenderViewHelper::DidCreateDataSource(WebFrame* frame,
return;
g_schedulers.Get()[frame] = new UserScriptIdleScheduler(
- frame, extension_renderer_context_);
+ frame, extension_dispatcher_);
}
-void ExtensionRenderViewHelper::OnExtensionResponse(int request_id,
+void ExtensionHelper::OnExtensionResponse(int request_id,
bool success,
const std::string& response,
const std::string& error) {
@@ -202,16 +197,15 @@ void ExtensionRenderViewHelper::OnExtensionResponse(int request_id,
request_id, success, response, error);
}
-void ExtensionRenderViewHelper::OnExtensionMessageInvoke(
- const std::string& extension_id,
- const std::string& function_name,
- const ListValue& args,
- const GURL& event_url) {
+void ExtensionHelper::OnExtensionMessageInvoke(const std::string& extension_id,
+ const std::string& function_name,
+ const ListValue& args,
+ const GURL& event_url) {
ExtensionBindingsContext::DispatchChromeHiddenMethod(
extension_id, function_name, args, render_view(), event_url);
}
-void ExtensionRenderViewHelper::OnExecuteCode(
+void ExtensionHelper::OnExecuteCode(
const ExtensionMsg_ExecuteCode_Params& params) {
WebView* webview = render_view()->webview();
WebFrame* main_frame = webview->mainFrame();
@@ -228,7 +222,7 @@ void ExtensionRenderViewHelper::OnExecuteCode(
i->second->ExecuteCode(params);
}
-void ExtensionRenderViewHelper::OnGetApplicationInfo(int page_id) {
+void ExtensionHelper::OnGetApplicationInfo(int page_id) {
WebApplicationInfo app_info;
if (page_id == render_view()->page_id()) {
string16 error;
@@ -251,15 +245,15 @@ void ExtensionRenderViewHelper::OnGetApplicationInfo(int page_id) {
routing_id(), page_id, app_info));
}
-void ExtensionRenderViewHelper::OnNotifyRendererViewType(ViewType::Type type) {
+void ExtensionHelper::OnNotifyRendererViewType(ViewType::Type type) {
view_type_ = type;
}
-void ExtensionRenderViewHelper::OnUpdateBrowserWindowId(int window_id) {
+void ExtensionHelper::OnUpdateBrowserWindowId(int window_id) {
browser_window_id_ = window_id;
}
-void ExtensionRenderViewHelper::DidDownloadApplicationDefinition(
+void ExtensionHelper::DidDownloadApplicationDefinition(
const WebKit::WebURLResponse& response,
const std::string& data) {
scoped_ptr<WebApplicationInfo> app_info(
@@ -294,17 +288,15 @@ void ExtensionRenderViewHelper::DidDownloadApplicationDefinition(
pending_app_info_->icons[i].width,
WebURLRequest::TargetIsFavicon,
NewCallback(
- this,
- &ExtensionRenderViewHelper::DidDownloadApplicationIcon))));
+ this, &ExtensionHelper::DidDownloadApplicationIcon))));
}
} else {
Send(new ExtensionHostMsg_InstallApplication(routing_id(), *app_info));
}
}
-void ExtensionRenderViewHelper::DidDownloadApplicationIcon(
- ImageResourceFetcher* fetcher,
- const SkBitmap& image) {
+void ExtensionHelper::DidDownloadApplicationIcon(ImageResourceFetcher* fetcher,
+ const SkBitmap& image) {
pending_app_info_->icons[fetcher->id()].data = image;
// Remove the image fetcher from our pending list. We're in the callback from
@@ -353,7 +345,7 @@ void ExtensionRenderViewHelper::DidDownloadApplicationIcon(
pending_app_info_.reset(NULL);
}
-void ExtensionRenderViewHelper::AddErrorToRootConsole(const string16& message) {
+void ExtensionHelper::AddErrorToRootConsole(const string16& message) {
if (render_view()->webview() && render_view()->webview()->mainFrame()) {
render_view()->webview()->mainFrame()->addMessageToConsole(
WebConsoleMessage(WebConsoleMessage::LevelError, message));
diff --git a/chrome/renderer/extensions/extension_render_view_helper.h b/chrome/renderer/extensions/extension_helper.h
index 4329130..7356fc9 100644
--- a/chrome/renderer/extensions/extension_render_view_helper.h
+++ b/chrome/renderer/extensions/extension_helper.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CHROME_RENDERER_EXTENSIONS_EXTENSION_RENDER_VIEW_HELPER_H_
-#define CHROME_RENDERER_EXTENSIONS_EXTENSION_RENDER_VIEW_HELPER_H_
+#ifndef CHROME_RENDERER_EXTENSIONS_EXTENSION_HELPER_H_
+#define CHROME_RENDERER_EXTENSIONS_EXTENSION_HELPER_H_
#pragma once
#include <map>
@@ -13,7 +13,7 @@
#include "content/renderer/render_view_observer.h"
#include "content/renderer/render_view_observer_tracker.h"
-class ExtensionRendererContext;
+class ExtensionDispatcher;
class GURL;
struct ExtensionMsg_ExecuteCode_Params;
struct WebApplicationInfo;
@@ -27,13 +27,12 @@ class ResourceFetcher;
}
// RenderView-level plumbing for extension features.
-class ExtensionRenderViewHelper
- : public RenderViewObserver,
- public RenderViewObserverTracker<ExtensionRenderViewHelper> {
+class ExtensionHelper : public RenderViewObserver,
+ public RenderViewObserverTracker<ExtensionHelper> {
public:
- ExtensionRenderViewHelper(RenderView* render_view,
- ExtensionRendererContext* extension_renderer_context);
- virtual ~ExtensionRenderViewHelper();
+ ExtensionHelper(RenderView* render_view,
+ ExtensionDispatcher* extension_dispatcher);
+ virtual ~ExtensionHelper();
// Starts installation of the page in the specified frame as a web app. The
// page must link to an external 'definition file'. This is different from
@@ -87,7 +86,7 @@ class ExtensionRenderViewHelper
// Helper to add an error message to the root frame's console.
void AddErrorToRootConsole(const string16& message);
- ExtensionRendererContext* extension_renderer_context_;
+ ExtensionDispatcher* extension_dispatcher_;
// The app info that we are processing. This is used when installing an app
// via application definition. The in-progress web app is stored here while
@@ -110,7 +109,7 @@ class ExtensionRenderViewHelper
// Id number of browser window which RenderView is attached to.
int browser_window_id_;
- DISALLOW_COPY_AND_ASSIGN(ExtensionRenderViewHelper);
+ DISALLOW_COPY_AND_ASSIGN(ExtensionHelper);
};
-#endif // CHROME_RENDERER_EXTENSIONS_EXTENSION_RENDER_VIEW_HELPER_H_
+#endif // CHROME_RENDERER_EXTENSIONS_EXTENSION_HELPER_H_
diff --git a/chrome/renderer/extensions/extension_process_bindings.cc b/chrome/renderer/extensions/extension_process_bindings.cc
index 35a6f8f..a673183 100644
--- a/chrome/renderer/extensions/extension_process_bindings.cc
+++ b/chrome/renderer/extensions/extension_process_bindings.cc
@@ -26,10 +26,10 @@
#include "chrome/common/url_constants.h"
#include "chrome/renderer/chrome_render_process_observer.h"
#include "chrome/renderer/extensions/event_bindings.h"
-#include "chrome/renderer/extensions/extension_base.h"
#include "chrome/renderer/extensions/extension_bindings_context.h"
-#include "chrome/renderer/extensions/extension_render_view_helper.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
+#include "chrome/renderer/extensions/extension_base.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
+#include "chrome/renderer/extensions/extension_helper.h"
#include "chrome/renderer/extensions/js_only_v8_extensions.h"
#include "chrome/renderer/extensions/renderer_extension_bindings.h"
#include "chrome/renderer/extensions/user_script_slave.h"
@@ -91,8 +91,7 @@ class ExtensionViewAccumulator : public RenderViewVisitor {
v8::Local<v8::Array> views() { return views_; }
virtual bool Visit(RenderView* render_view) {
- ExtensionRenderViewHelper* helper =
- ExtensionRenderViewHelper::Get(render_view);
+ ExtensionHelper* helper = ExtensionHelper::Get(render_view);
if (!ViewTypeMatches(helper->view_type(), view_type_))
return true;
@@ -154,12 +153,12 @@ class ExtensionViewAccumulator : public RenderViewVisitor {
class ExtensionImpl : public ExtensionBase {
public:
- explicit ExtensionImpl(ExtensionRendererContext* extension_renderer_context)
+ explicit ExtensionImpl(ExtensionDispatcher* extension_dispatcher)
: ExtensionBase(kExtensionName,
GetStringResource(IDR_EXTENSION_PROCESS_BINDINGS_JS),
arraysize(kExtensionDeps),
kExtensionDeps,
- extension_renderer_context) {
+ extension_dispatcher) {
}
~ExtensionImpl() {}
@@ -392,7 +391,7 @@ class ExtensionImpl : public ExtensionBase {
ExtensionImpl* v8_extension = GetFromArguments<ExtensionImpl>(args);
std::string extension_id = *v8::String::Utf8Value(args[0]->ToString());
const ::Extension* extension =
- v8_extension->extension_renderer_context_->extensions()->GetByID(
+ v8_extension->extension_dispatcher_->extensions()->GetByID(
extension_id);
CHECK(!extension_id.empty());
if (!extension)
@@ -423,7 +422,7 @@ class ExtensionImpl : public ExtensionBase {
std::string name = *v8::String::AsciiValue(args[0]);
const std::set<std::string>& function_names =
- v8_extension->extension_renderer_context_->function_names();
+ v8_extension->extension_dispatcher_->function_names();
if (function_names.find(name) == function_names.end()) {
NOTREACHED() << "Unexpected function " << name;
return v8::Undefined();
@@ -564,12 +563,10 @@ class ExtensionImpl : public ExtensionBase {
} // namespace
v8::Extension* ExtensionProcessBindings::Get(
- ExtensionRendererContext* extension_renderer_context) {
- static v8::Extension* extension =
- new ExtensionImpl(extension_renderer_context);
- CHECK_EQ(
- extension_renderer_context,
- static_cast<ExtensionImpl*>(extension)->extension_renderer_context());
+ ExtensionDispatcher* extension_dispatcher) {
+ static v8::Extension* extension = new ExtensionImpl(extension_dispatcher);
+ CHECK_EQ(extension_dispatcher,
+ static_cast<ExtensionImpl*>(extension)->extension_dispatcher());
return extension;
}
diff --git a/chrome/renderer/extensions/extension_process_bindings.h b/chrome/renderer/extensions/extension_process_bindings.h
index c636cf0..28a1ebe 100644
--- a/chrome/renderer/extensions/extension_process_bindings.h
+++ b/chrome/renderer/extensions/extension_process_bindings.h
@@ -12,7 +12,7 @@
#include <string>
#include <vector>
-class ExtensionRendererContext;
+class ExtensionDispatcher;
class GURL;
class URLPattern;
@@ -26,8 +26,7 @@ class Extension;
class ExtensionProcessBindings {
public:
- static v8::Extension* Get(
- ExtensionRendererContext* extension_renderer_context);
+ static v8::Extension* Get(ExtensionDispatcher* extension_dispatcher);
// Handles a response to an API request.
static void HandleResponse(int request_id, bool success,
diff --git a/chrome/renderer/extensions/renderer_extension_bindings.cc b/chrome/renderer/extensions/renderer_extension_bindings.cc
index be76080..367fca3 100644
--- a/chrome/renderer/extensions/renderer_extension_bindings.cc
+++ b/chrome/renderer/extensions/renderer_extension_bindings.cc
@@ -14,7 +14,7 @@
#include "chrome/common/url_constants.h"
#include "chrome/renderer/extensions/event_bindings.h"
#include "chrome/renderer/extensions/extension_base.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "content/renderer/render_thread.h"
#include "content/renderer/render_view.h"
#include "grit/renderer_resources.h"
@@ -62,10 +62,10 @@ const char* kExtensionDeps[] = { EventBindings::kName };
class ExtensionImpl : public ExtensionBase {
public:
- explicit ExtensionImpl(ExtensionRendererContext* context)
+ explicit ExtensionImpl(ExtensionDispatcher* dispatcher)
: ExtensionBase(RendererExtensionBindings::kName,
GetStringResource(IDR_RENDERER_EXTENSION_BINDINGS_JS),
- arraysize(kExtensionDeps), kExtensionDeps, context) {
+ arraysize(kExtensionDeps), kExtensionDeps, dispatcher) {
}
~ExtensionImpl() {}
@@ -248,8 +248,7 @@ class ExtensionImpl : public ExtensionBase {
const char* RendererExtensionBindings::kName =
"chrome/RendererExtensionBindings";
-v8::Extension* RendererExtensionBindings::Get(
- ExtensionRendererContext* context) {
- static v8::Extension* extension = new ExtensionImpl(context);
+v8::Extension* RendererExtensionBindings::Get(ExtensionDispatcher* dispatcher) {
+ static v8::Extension* extension = new ExtensionImpl(dispatcher);
return extension;
}
diff --git a/chrome/renderer/extensions/renderer_extension_bindings.h b/chrome/renderer/extensions/renderer_extension_bindings.h
index 43c50bb..59b726e 100644
--- a/chrome/renderer/extensions/renderer_extension_bindings.h
+++ b/chrome/renderer/extensions/renderer_extension_bindings.h
@@ -8,7 +8,7 @@
#include <string>
-class ExtensionRendererContext;
+class ExtensionDispatcher;
class GURL;
class RenderView;
@@ -24,7 +24,7 @@ class RendererExtensionBindings {
static const char* kName;
// Creates an instance of the extension.
- static v8::Extension* Get(ExtensionRendererContext* context);
+ static v8::Extension* Get(ExtensionDispatcher* dispatcher);
};
#endif // CHROME_RENDERER_EXTENSIONS_RENDERER_EXTENSION_BINDINGS_H_
diff --git a/chrome/renderer/extensions/user_script_idle_scheduler.cc b/chrome/renderer/extensions/user_script_idle_scheduler.cc
index 17a9335..5c9eea6 100644
--- a/chrome/renderer/extensions/user_script_idle_scheduler.cc
+++ b/chrome/renderer/extensions/user_script_idle_scheduler.cc
@@ -7,9 +7,9 @@
#include "base/message_loop.h"
#include "chrome/common/extensions/extension_error_utils.h"
#include "chrome/common/extensions/extension_messages.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "chrome/renderer/extensions/extension_groups.h"
-#include "chrome/renderer/extensions/extension_render_view_helper.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
+#include "chrome/renderer/extensions/extension_helper.h"
#include "chrome/renderer/extensions/user_script_slave.h"
#include "content/renderer/render_view.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebDocument.h"
@@ -29,11 +29,11 @@ using WebKit::WebString;
using WebKit::WebView;
UserScriptIdleScheduler::UserScriptIdleScheduler(
- WebFrame* frame, ExtensionRendererContext* extension_renderer_context)
+ WebFrame* frame, ExtensionDispatcher* extension_dispatcher)
: ALLOW_THIS_IN_INITIALIZER_LIST(method_factory_(this)),
frame_(frame),
has_run_(false),
- extension_renderer_context_(extension_renderer_context) {
+ extension_dispatcher_(extension_dispatcher) {
}
UserScriptIdleScheduler::~UserScriptIdleScheduler() {
@@ -82,7 +82,7 @@ void UserScriptIdleScheduler::MaybeRun() {
// http://code.google.com/p/chromium/issues/detail?id=29644
has_run_ = true;
- extension_renderer_context_->user_script_slave()->InjectScripts(
+ extension_dispatcher_->user_script_slave()->InjectScripts(
frame_, UserScript::DOCUMENT_IDLE);
while (!pending_code_execution_queue_.empty()) {
@@ -95,8 +95,8 @@ void UserScriptIdleScheduler::MaybeRun() {
void UserScriptIdleScheduler::ExecuteCodeImpl(
const ExtensionMsg_ExecuteCode_Params& params) {
- const Extension* extension =
- extension_renderer_context_->extensions()->GetByID(params.extension_id);
+ const Extension* extension = extension_dispatcher_->extensions()->GetByID(
+ params.extension_id);
RenderView* render_view = RenderView::FromWebView(frame_->view());
// Since extension info is sent separately from user script info, they can
@@ -147,7 +147,7 @@ void UserScriptIdleScheduler::ExecuteCodeImpl(
std::vector<WebScriptSource> sources;
sources.push_back(source);
frame->executeScriptInIsolatedWorld(
- extension_renderer_context_->user_script_slave()->
+ extension_dispatcher_->user_script_slave()->
GetIsolatedWorldIdForExtension(extension, frame),
&sources.front(), sources.size(), EXTENSION_GROUP_CONTENT_SCRIPTS);
}
diff --git a/chrome/renderer/extensions/user_script_idle_scheduler.h b/chrome/renderer/extensions/user_script_idle_scheduler.h
index 903c030..62258c6 100644
--- a/chrome/renderer/extensions/user_script_idle_scheduler.h
+++ b/chrome/renderer/extensions/user_script_idle_scheduler.h
@@ -12,7 +12,7 @@
#include "base/memory/linked_ptr.h"
#include "base/task.h"
-class ExtensionRendererContext;
+class ExtensionDispatcher;
class RenderView;
struct ExtensionMsg_ExecuteCode_Params;
@@ -34,12 +34,12 @@ class WebFrame;
// NOTE: this class does not inherit from RenderViewObserver on purpose. The
// reason is that this object is per frame, and a frame can move across
// RenderViews thanks to adoptNode. So we have each RenderView's
-// ExtensionRenderViewHelper proxy these calls to the renderer process'
-// ExtensionRendererContext, which contains the mapping from WebFrame to us.
+// ExtensionHelper proxy these calls to the renderer process'
+// ExtensionDispatcher, which contains the mapping from WebFrame to us.
class UserScriptIdleScheduler {
public:
UserScriptIdleScheduler(WebKit::WebFrame* frame,
- ExtensionRendererContext* extension_renderer_context);
+ ExtensionDispatcher* extension_dispatcher);
~UserScriptIdleScheduler();
void ExecuteCode(const ExtensionMsg_ExecuteCode_Params& params);
@@ -72,7 +72,7 @@ class UserScriptIdleScheduler {
std::queue<linked_ptr<ExtensionMsg_ExecuteCode_Params> >
pending_code_execution_queue_;
- ExtensionRendererContext* extension_renderer_context_;
+ ExtensionDispatcher* extension_dispatcher_;
};
#endif // CHROME_RENDERER_EXTENSIONS_USER_SCRIPT_IDLE_SCHEDULER_H_
diff --git a/chrome/renderer/extensions/user_script_slave.cc b/chrome/renderer/extensions/user_script_slave.cc
index d1e131e..dbdec79 100644
--- a/chrome/renderer/extensions/user_script_slave.cc
+++ b/chrome/renderer/extensions/user_script_slave.cc
@@ -8,17 +8,17 @@
#include "base/command_line.h"
#include "base/logging.h"
-#include "base/metrics/histogram.h"
#include "base/perftimer.h"
#include "base/pickle.h"
#include "base/shared_memory.h"
+#include "base/metrics/histogram.h"
#include "base/stringprintf.h"
#include "chrome/common/extensions/extension.h"
#include "chrome/common/extensions/extension_set.h"
#include "chrome/common/url_constants.h"
#include "chrome/renderer/chrome_render_process_observer.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "chrome/renderer/extensions/extension_groups.h"
-#include "chrome/renderer/extensions/extension_renderer_context.h"
#include "content/renderer/render_thread.h"
#include "googleurl/src/gurl.h"
#include "grit/renderer_resources.h"