summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/extensions/web_request_custom_bindings.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/renderer/extensions/web_request_custom_bindings.cc')
-rw-r--r--chrome/renderer/extensions/web_request_custom_bindings.cc25
1 files changed, 18 insertions, 7 deletions
diff --git a/chrome/renderer/extensions/web_request_custom_bindings.cc b/chrome/renderer/extensions/web_request_custom_bindings.cc
index 83f716c..3246926 100644
--- a/chrome/renderer/extensions/web_request_custom_bindings.cc
+++ b/chrome/renderer/extensions/web_request_custom_bindings.cc
@@ -12,15 +12,18 @@
namespace extensions {
-WebRequestCustomBindings::WebRequestCustomBindings()
- : ChromeV8Extension(NULL) {
- RouteStaticFunction("GetUniqueSubEventName", &GetUniqueSubEventName);
-}
+WebRequestCustomBindings::WebRequestCustomBindings(
+ int dependency_count,
+ const char** dependencies)
+ : ChromeV8Extension(
+ "extensions/web_request_custom_bindings.js",
+ IDR_WEB_REQUEST_CUSTOM_BINDINGS_JS,
+ dependency_count,
+ dependencies,
+ NULL) {}
// Attach an event name to an object.
-// static
-v8::Handle<v8::Value> WebRequestCustomBindings::GetUniqueSubEventName(
- const v8::Arguments& args) {
+static v8::Handle<v8::Value> GetUniqueSubEventName(const v8::Arguments& args) {
static int next_event_id = 0;
DCHECK(args.Length() == 1);
DCHECK(args[0]->IsString());
@@ -30,5 +33,13 @@ v8::Handle<v8::Value> WebRequestCustomBindings::GetUniqueSubEventName(
return v8::String::New(unique_event_name.c_str());
}
+v8::Handle<v8::FunctionTemplate> WebRequestCustomBindings::GetNativeFunction(
+ v8::Handle<v8::String> name) {
+ if (name->Equals(v8::String::New("GetUniqueSubEventName")))
+ return v8::FunctionTemplate::New(GetUniqueSubEventName);
+
+ return ChromeV8Extension::GetNativeFunction(name);
+}
+
} // extensions