Fix chrome.devtools not available in devtools extensions

This commit is contained in:
Cheng Zhao 2016-05-23 16:04:10 +09:00
parent de1fc9d432
commit d6f9e57e33

View file

@ -1,4 +1,7 @@
window.onload = function () {
// Make sure |window.chrome| is defined for devtools extensions.
hijackSetInjectedScript(InspectorFrontendHost)
// Use menu API to show context menu.
window.InspectorFrontendHost.showContextMenuAtPoint = createMenu
@ -6,6 +9,18 @@ window.onload = function () {
window.WebInspector.createFileSelectorElement = createFileSelectorElement
}
const hijackSetInjectedScript = function (InspectorFrontendHost) {
const {setInjectedScriptForOrigin} = InspectorFrontendHost
InspectorFrontendHost.setInjectedScriptForOrigin = function (origin, source) {
const wrapped = `(function (...args) {
window.chrome = {}
const original = ${source}
original(...args)
})`
setInjectedScriptForOrigin(origin, wrapped)
}
}
var convertToMenuTemplate = function (items) {
var fn, i, item, len, template
template = []