Commit 0fc33c1a authored by Daniel Cheng's avatar Daniel Cheng Committed by Commit Bot

Use Dispatcher::OnRenderThreadStarted to register extensions::SafeBuiltins

Change-Id: I82bca85f027b47e538fb4ceb1893cbdcf23352d6
Reviewed-on: https://chromium-review.googlesource.com/c/1279957
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: default avatarDevlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#599655}
parent 63891984
...@@ -158,7 +158,7 @@ void ChromeExtensionsRendererClient::RenderThreadStarted() { ...@@ -158,7 +158,7 @@ void ChromeExtensionsRendererClient::RenderThreadStarted() {
extension_dispatcher_ = std::make_unique<extensions::Dispatcher>( extension_dispatcher_ = std::make_unique<extensions::Dispatcher>(
std::make_unique<ChromeExtensionsDispatcherDelegate>()); std::make_unique<ChromeExtensionsDispatcherDelegate>());
} }
thread->RegisterExtension(extensions::SafeBuiltins::CreateV8Extension()); extension_dispatcher_->OnRenderThreadStarted(thread);
permissions_policy_delegate_.reset( permissions_policy_delegate_.reset(
new extensions::RendererPermissionsPolicyDelegate( new extensions::RendererPermissionsPolicyDelegate(
extension_dispatcher_.get())); extension_dispatcher_.get()));
......
...@@ -81,6 +81,7 @@ ...@@ -81,6 +81,7 @@
#include "extensions/renderer/renderer_messaging_service.h" #include "extensions/renderer/renderer_messaging_service.h"
#include "extensions/renderer/request_sender.h" #include "extensions/renderer/request_sender.h"
#include "extensions/renderer/runtime_custom_bindings.h" #include "extensions/renderer/runtime_custom_bindings.h"
#include "extensions/renderer/safe_builtins.h"
#include "extensions/renderer/script_context.h" #include "extensions/renderer/script_context.h"
#include "extensions/renderer/script_context_set.h" #include "extensions/renderer/script_context_set.h"
#include "extensions/renderer/script_injection.h" #include "extensions/renderer/script_injection.h"
...@@ -245,6 +246,10 @@ Dispatcher::Dispatcher(std::unique_ptr<DispatcherDelegate> delegate) ...@@ -245,6 +246,10 @@ Dispatcher::Dispatcher(std::unique_ptr<DispatcherDelegate> delegate)
Dispatcher::~Dispatcher() { Dispatcher::~Dispatcher() {
} }
void Dispatcher::OnRenderThreadStarted(content::RenderThread* thread) {
thread->RegisterExtension(extensions::SafeBuiltins::CreateV8Extension());
}
void Dispatcher::OnRenderFrameCreated(content::RenderFrame* render_frame) { void Dispatcher::OnRenderFrameCreated(content::RenderFrame* render_frame) {
script_injection_manager_->OnRenderFrameCreated(render_frame); script_injection_manager_->OnRenderFrameCreated(render_frame);
content_watcher_->OnRenderFrameCreated(render_frame); content_watcher_->OnRenderFrameCreated(render_frame);
......
...@@ -51,6 +51,10 @@ namespace base { ...@@ -51,6 +51,10 @@ namespace base {
class ListValue; class ListValue;
} }
namespace content {
class RenderThread;
} // namespace content
namespace extensions { namespace extensions {
class ContentWatcher; class ContentWatcher;
class DispatcherDelegate; class DispatcherDelegate;
...@@ -80,6 +84,8 @@ class Dispatcher : public content::RenderThreadObserver, ...@@ -80,6 +84,8 @@ class Dispatcher : public content::RenderThreadObserver,
bool activity_logging_enabled() const { return activity_logging_enabled_; } bool activity_logging_enabled() const { return activity_logging_enabled_; }
void OnRenderThreadStarted(content::RenderThread* render_thread);
void OnRenderFrameCreated(content::RenderFrame* render_frame); void OnRenderFrameCreated(content::RenderFrame* render_frame);
bool IsExtensionActive(const std::string& extension_id) const; bool IsExtensionActive(const std::string& extension_id) const;
......
...@@ -7,15 +7,13 @@ ...@@ -7,15 +7,13 @@
#include "content/public/renderer/render_thread.h" #include "content/public/renderer/render_thread.h"
#include "extensions/renderer/dispatcher.h" #include "extensions/renderer/dispatcher.h"
#include "extensions/renderer/dispatcher_delegate.h" #include "extensions/renderer/dispatcher_delegate.h"
#include "extensions/renderer/safe_builtins.h"
namespace extensions { namespace extensions {
ShellExtensionsRendererClient::ShellExtensionsRendererClient() ShellExtensionsRendererClient::ShellExtensionsRendererClient()
: dispatcher_(std::make_unique<Dispatcher>( : dispatcher_(std::make_unique<Dispatcher>(
std::make_unique<DispatcherDelegate>())) { std::make_unique<DispatcherDelegate>())) {
content::RenderThread::Get()->RegisterExtension( dispatcher_->OnRenderThreadStarted(content::RenderThread::Get());
extensions::SafeBuiltins::CreateV8Extension());
} }
ShellExtensionsRendererClient::~ShellExtensionsRendererClient() { ShellExtensionsRendererClient::~ShellExtensionsRendererClient() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment