refactor: make ELECTRON_INSPECTOR_SELECT_FILE handler async (#17235)
This commit is contained in:
parent
6cb7b8d3a4
commit
2733697819
1 changed files with 12 additions and 18 deletions
|
@ -3,9 +3,12 @@
|
||||||
const { dialog, Menu } = require('electron')
|
const { dialog, Menu } = require('electron')
|
||||||
const fs = require('fs')
|
const fs = require('fs')
|
||||||
const url = require('url')
|
const url = require('url')
|
||||||
|
const util = require('util')
|
||||||
|
|
||||||
const ipcMainUtils = require('@electron/internal/browser/ipc-main-internal-utils')
|
const ipcMainUtils = require('@electron/internal/browser/ipc-main-internal-utils')
|
||||||
|
|
||||||
|
const readFile = util.promisify(fs.readFile)
|
||||||
|
|
||||||
const convertToMenuTemplate = function (event, items) {
|
const convertToMenuTemplate = function (event, items) {
|
||||||
return items.map(function (item) {
|
return items.map(function (item) {
|
||||||
const transformed = item.type === 'subMenu' ? {
|
const transformed = item.type === 'subMenu' ? {
|
||||||
|
@ -82,25 +85,16 @@ ipcMainUtils.handle('ELECTRON_INSPECTOR_CONTEXT_MENU', function (event, items, i
|
||||||
menu.popup({ window })
|
menu.popup({ window })
|
||||||
})
|
})
|
||||||
|
|
||||||
ipcMainUtils.handle('ELECTRON_INSPECTOR_SELECT_FILE', function (event) {
|
ipcMainUtils.handle('ELECTRON_INSPECTOR_SELECT_FILE', async function (event) {
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
assertChromeDevTools(event.sender, 'window.UI.createFileSelectorElement()')
|
assertChromeDevTools(event.sender, 'window.UI.createFileSelectorElement()')
|
||||||
|
|
||||||
dialog.showOpenDialog({}, function (result) {
|
const result = await dialog.showOpenDialog({})
|
||||||
if (!result.canceled) {
|
if (result.canceled) return []
|
||||||
|
|
||||||
const path = result.filePaths[0]
|
const path = result.filePaths[0]
|
||||||
fs.readFile(path, (error, data) => {
|
const data = await readFile(path)
|
||||||
if (error) {
|
|
||||||
reject(error)
|
return [path, data]
|
||||||
} else {
|
|
||||||
resolve([path, data])
|
|
||||||
}
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
resolve([])
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
|
|
||||||
ipcMainUtils.handle('ELECTRON_INSPECTOR_CONFIRM', function (event, message, title) {
|
ipcMainUtils.handle('ELECTRON_INSPECTOR_CONFIRM', function (event, message, title) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue