Fix displaying context menu for devtools
This commit is contained in:
parent
af72842728
commit
651dabf47e
2 changed files with 10 additions and 6 deletions
|
@ -37,9 +37,11 @@ for arg in process.argv
|
|||
if location.protocol is 'chrome-devtools:'
|
||||
# Override some inspector APIs.
|
||||
require path.join(__dirname, 'inspector')
|
||||
nodeIntegration = 'true'
|
||||
else if location.protocol is 'chrome-extension:'
|
||||
# Add implementations of chrome API.
|
||||
require path.join(__dirname, 'chrome-api')
|
||||
nodeIntegration = 'true'
|
||||
else
|
||||
# Override default web functions.
|
||||
require path.join(__dirname, 'override')
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
window.onload = ->
|
||||
# Use menu API to show context menu.
|
||||
InspectorFrontendHost.showContextMenu = (event, items) ->
|
||||
createMenu items, event
|
||||
InspectorFrontendHost.showContextMenuAtPoint = (x, y, items, document) ->
|
||||
createMenu items
|
||||
|
||||
# Use dialog API to override file chooser dialog.
|
||||
WebInspector.createFileSelectorElement = (callback) ->
|
||||
|
@ -32,17 +32,19 @@ convertToMenuTemplate = (items) ->
|
|||
label: item.label
|
||||
enabled: item.enabled
|
||||
if item.id?
|
||||
transformed.click = -> WebInspector.contextMenuItemSelected item.id
|
||||
transformed.click = -> InspectorFrontendAPI.contextMenuItemSelected item.id
|
||||
template.push transformed
|
||||
template
|
||||
|
||||
createMenu = (items, event) ->
|
||||
createMenu = (items) ->
|
||||
remote = require 'remote'
|
||||
Menu = remote.require 'menu'
|
||||
|
||||
menu = Menu.buildFromTemplate convertToMenuTemplate(items)
|
||||
menu.popup remote.getCurrentWindow()
|
||||
event.consume true
|
||||
# The menu is expected to show asynchronously.
|
||||
setImmediate ->
|
||||
menu.popup remote.getCurrentWindow()
|
||||
InspectorFrontendAPI.contextMenuCleared()
|
||||
|
||||
showFileChooserDialog = (callback) ->
|
||||
remote = require 'remote'
|
||||
|
|
Loading…
Reference in a new issue