perf: 优化客户端

This commit is contained in:
kuaifan 2024-03-02 14:11:33 +08:00
parent a65181757d
commit 3556133585
3 changed files with 41 additions and 2 deletions

24
electron/electron.js vendored
View File

@ -333,7 +333,7 @@ function createWebWindow(args) {
}) })
webWindow.webContents.on('before-input-event', (event, input) => { webWindow.webContents.on('before-input-event', (event, input) => {
if (input.meta && input.key.toLowerCase() === 'r') { if (utils.isMetaOrControl(input) && input.key.toLowerCase() === 'r') {
reloadWebTab(0) reloadWebTab(0)
event.preventDefault() event.preventDefault()
} }
@ -413,9 +413,11 @@ function createWebWindow(args) {
}).then(_ => { }) }).then(_ => { })
}) })
browserView.webContents.on('before-input-event', (event, input) => { browserView.webContents.on('before-input-event', (event, input) => {
if (input.meta && input.key.toLowerCase() === 'r') { if (utils.isMetaOrControl(input) && input.key.toLowerCase() === 'r') {
browserView.webContents.reload() browserView.webContents.reload()
event.preventDefault() event.preventDefault()
} else if (input.meta && input.shift && input.key.toLowerCase() === 'i') {
browserView.webContents.toggleDevTools()
} }
}) })
browserView.webContents.loadURL(args.url).then(_ => { }).catch(_ => { }) browserView.webContents.loadURL(args.url).then(_ => { }).catch(_ => { })
@ -610,6 +612,9 @@ app.on('browser-window-focus', () => {
if (mainWindow) { if (mainWindow) {
mainWindow.webContents.send("browserWindowFocus", {}) mainWindow.webContents.send("browserWindowFocus", {})
} }
if (storageBrowser) {
storageBrowser.webContents.reload()
}
}) })
/** /**
@ -698,6 +703,18 @@ ipcMain.on('webTabBrowser', (event) => {
event.returnValue = "ok" event.returnValue = "ok"
}) })
/**
* 内置浏览器 - 打开开发者工具
*/
ipcMain.on('webTabOpenDevTools', (event) => {
const item = currentWebTab()
if (!item) {
return
}
item.view.webContents.openDevTools()
event.returnValue = "ok"
})
/** /**
* 隐藏窗口macwin隐藏其他关闭 * 隐藏窗口macwin隐藏其他关闭
*/ */
@ -854,6 +871,9 @@ ipcMain.on('storageBrowser', (event, args) => {
nativeWindowOpen: true nativeWindowOpen: true
}, },
}) })
storageBrowser.on('closed', () => {
storageBrowser = null
})
} }
storageBrowser.loadURL(args.url).then(_ => { }).catch(_ => { }) storageBrowser.loadURL(args.url).then(_ => { }).catch(_ => { })
} }

View File

@ -63,6 +63,9 @@
break break
case 'title': case 'title':
if (["HitoseaTask", "DooTask", "about:blank"].includes(detail.title)) {
return
}
const titleItem = this.tabs.find(item => item.id === id) const titleItem = this.tabs.find(item => item.id === id)
if (titleItem) { if (titleItem) {
titleItem.title = detail.title titleItem.title = detail.title
@ -100,6 +103,9 @@
break break
} }
} }
window.__openDevTools = () => {
this.sendMessage('webTabOpenDevTools')
}
}, },
computed: { computed: {
pageTitle() { pageTitle() {

13
electron/utils.js vendored
View File

@ -421,5 +421,18 @@ module.exports = {
} }
callback({responseHeaders: details.responseHeaders}); callback({responseHeaders: details.responseHeaders});
}); });
},
/**
* win mac meta control
* @param input
* @returns {boolean | Point | HTMLElement}
*/
isMetaOrControl(input) {
if (process.platform === 'win32') {
return input.control
} else {
return input.meta
}
} }
} }