summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/extensions/page_capture_custom_bindings.cc
diff options
context:
space:
mode:
authorkoz@chromium.org <koz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-13 02:09:41 +0000
committerkoz@chromium.org <koz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-03-13 02:09:41 +0000
commit9fb990b32d4de5697fa848e03a6bf4d11fcd0417 (patch)
treec6dd811b2fd92bf95afe4107e3f78ae86e255319 /chrome/renderer/extensions/page_capture_custom_bindings.cc
parentaf885dd7caf0455a05f15aac48fa221191266706 (diff)
downloadchromium_src-9fb990b32d4de5697fa848e03a6bf4d11fcd0417.zip
chromium_src-9fb990b32d4de5697fa848e03a6bf4d11fcd0417.tar.gz
chromium_src-9fb990b32d4de5697fa848e03a6bf4d11fcd0417.tar.bz2
Implement a module system for the extension bindings JS.
BUG=104100 TEST=existing browser tests Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=125132 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=125801 Review URL: http://codereview.chromium.org/9386001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126306 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/extensions/page_capture_custom_bindings.cc')
-rw-r--r--chrome/renderer/extensions/page_capture_custom_bindings.cc32
1 files changed, 9 insertions, 23 deletions
diff --git a/chrome/renderer/extensions/page_capture_custom_bindings.cc b/chrome/renderer/extensions/page_capture_custom_bindings.cc
index e37cdab..c7e41ea 100644
--- a/chrome/renderer/extensions/page_capture_custom_bindings.cc
+++ b/chrome/renderer/extensions/page_capture_custom_bindings.cc
@@ -13,18 +13,15 @@
namespace extensions {
-PageCaptureCustomBindings::PageCaptureCustomBindings(
- int dependency_count,
- const char** dependencies)
- : ChromeV8Extension(
- "extensions/page_capture_custom_bindings.js",
- IDR_PAGE_CAPTURE_CUSTOM_BINDINGS_JS,
- dependency_count,
- dependencies,
- NULL) {}
-
-// Creates a Blob with the content of the specified file.
-static v8::Handle<v8::Value> CreateBlob(const v8::Arguments& args) {
+PageCaptureCustomBindings::PageCaptureCustomBindings()
+ : ChromeV8Extension(NULL) {
+ RouteStaticFunction("CreateBlob", &CreateBlob);
+ RouteStaticFunction("SendResponseAck", &SendResponseAck);
+}
+
+// static
+v8::Handle<v8::Value> PageCaptureCustomBindings::CreateBlob(
+ const v8::Arguments& args) {
CHECK(args.Length() == 2);
CHECK(args[0]->IsString());
CHECK(args[1]->IsInt32());
@@ -48,15 +45,4 @@ v8::Handle<v8::Value> PageCaptureCustomBindings::SendResponseAck(
return v8::Undefined();
}
-v8::Handle<v8::FunctionTemplate> PageCaptureCustomBindings::GetNativeFunction(
- v8::Handle<v8::String> name) {
- if (name->Equals(v8::String::New("CreateBlob"))) {
- return v8::FunctionTemplate::New(CreateBlob, v8::External::New(this));
- } else if (name->Equals(v8::String::New("SendResponseAck"))) {
- return v8::FunctionTemplate::New(SendResponseAck, v8::External::New(this));
- }
-
- return ChromeV8Extension::GetNativeFunction(name);
-}
-
} // namespace extensions