Add support for chrome.extension API in devtools extension.

This commit is contained in:
Cheng Zhao 2014-08-28 12:24:52 +08:00
parent 39b98b0e4d
commit 8051ad8b2a
5 changed files with 19 additions and 1 deletions

View file

@ -199,6 +199,10 @@ bool AtomRendererClient::IsNodeBindingEnabled(blink::WebFrame* frame) {
// Node integration is enabled in main frame unless explictly disabled.
else if (frame == main_frame_)
return true;
// Enable node integration in chrome extensions.
else if (frame != NULL &&
GURL(frame->document().url()).SchemeIs("chrome-extension"))
return true;
else if (node_integration_ == MANUAL_ENABLE_IFRAME &&
frame != NULL &&
frame->uniqueName().utf8().find(kSecurityEnableNodeIntegration)

View file

@ -0,0 +1,10 @@
url = require 'url'
chrome = window.chrome = window.chrome || {}
chrome.extension =
getURL: (path) ->
url.format
protocol: location.protocol
slashes: true
hostname: location.hostname
pathname: path

View file

@ -46,6 +46,9 @@ else
if location.protocol is 'chrome-devtools:'
# Override some inspector APIs.
require path.join(__dirname, 'inspector')
else if location.protocol is 'chrome-extension:'
# Add implementations of chrome API.
require path.join(__dirname, 'chrome-api')
else
# Override default web functions.
require path.join(__dirname, 'override')