| Index: extensions/renderer/script_context.cc
|
| diff --git a/extensions/renderer/script_context.cc b/extensions/renderer/script_context.cc
|
| index 60a558b6c37fd21e6d9576f1e6f9f57476195d0c..882837de7628cb18801e66b46f20f04a3c618a3d 100644
|
| --- a/extensions/renderer/script_context.cc
|
| +++ b/extensions/renderer/script_context.cc
|
| @@ -16,6 +16,7 @@
|
| #include "extensions/common/extension_api.h"
|
| #include "extensions/common/extension_urls.h"
|
| #include "extensions/common/features/base_feature_provider.h"
|
| +#include "gin/per_context_data.h"
|
| #include "third_party/WebKit/public/web/WebDataSource.h"
|
| #include "third_party/WebKit/public/web/WebDocument.h"
|
| #include "third_party/WebKit/public/web/WebFrame.h"
|
| @@ -42,6 +43,7 @@ ScriptContext::ScriptContext(const v8::Handle<v8::Context>& v8_context,
|
| << " extension id: " << GetExtensionID() << "\n"
|
| << " frame: " << web_frame_ << "\n"
|
| << " context type: " << GetContextTypeDescription();
|
| + gin::PerContextData::From(v8_context)->set_runner(this);
|
| }
|
|
|
| ScriptContext::~ScriptContext() {
|
| @@ -221,4 +223,21 @@ void ScriptContext::OnResponseReceived(const std::string& name,
|
| << *v8::String::Utf8Value(retval);
|
| }
|
|
|
| +void ScriptContext::Run(const std::string& source,
|
| + const std::string& resource_name) {
|
| + module_system_->RunString(source, resource_name);
|
| +}
|
| +
|
| +v8::Handle<v8::Value> ScriptContext::Call(v8::Handle<v8::Function> function,
|
| + v8::Handle<v8::Value> receiver,
|
| + int argc,
|
| + v8::Handle<v8::Value> argv[]) {
|
| + return CallFunction(function, argc, argv);
|
| +}
|
| +
|
| +gin::ContextHolder* ScriptContext::GetContextHolder() {
|
| + v8::HandleScope handle_scope(isolate());
|
| + return gin::PerContextData::From(v8_context())->context_holder();
|
| +}
|
| +
|
| } // namespace extensions
|
|
|