feat: 应用增加编辑菜单

This commit is contained in:
purocean
2021-05-29 11:02:11 +08:00
parent aebf86e280
commit a3d0803d17
2 changed files with 39 additions and 17 deletions
+2 -17
View File
@@ -7,6 +7,7 @@ import server from './server/main'
import { USER_DIR } from './server/constant'
import * as updater from './updater'
import { getAccelerator, registerShortcut } from './shortcut'
import { mainMenus, inputMenu, selectionMenu } from './menus';
const opn = require('opn')
const isMacos = os.platform() === 'darwin'
@@ -30,8 +31,7 @@ const getUrl = () => {
return `http://localhost:${isDev ? devFrontendPort : backendPort}` + (query ? `?${query}` : '')
}
// 去掉每个窗口默认的菜单
Menu.setApplicationMenu(null)
Menu.setApplicationMenu(mainMenus)
// 主窗口
let win: BrowserWindow | null = null
@@ -83,21 +83,6 @@ const createWindow = () => {
win = null
})
const selectionMenu = Menu.buildFromTemplate([
{ role: 'copy', label: '复制' },
])
const inputMenu = Menu.buildFromTemplate([
{ role: 'copy', label: '复制' },
{ role: 'paste', label: '粘贴' },
{ role: 'cut', label: '剪切' },
{ type: 'separator' },
{ role: 'undo' , label: '撤销' },
{ role: 'redo', label: '重做'},
{ type: 'separator' },
{ role: 'selectAll', label: '全选' },
])
win.webContents.on('context-menu', (e, props) => {
const { selectionText, isEditable } = props
if (isEditable) {
+37
View File
@@ -0,0 +1,37 @@
import { Menu } from 'electron'
export const selectionMenu = Menu.buildFromTemplate([
{ role: 'copy' },
])
export const inputMenu = Menu.buildFromTemplate([
{ role: 'copy' },
{ role: 'paste' },
{ role: 'cut' },
{ type: 'separator' },
{ role: 'undo' },
{ role: 'redo'},
{ type: 'separator' },
{ role: 'selectAll' },
])
export const mainMenus = Menu.buildFromTemplate([
{
label: "Application",
submenu: [
{ role: "quit", accelerator: "Command+Q" }
]
},
{
label: "Edit",
submenu: [
{ role: "undo", accelerator: "CmdOrCtrl+Z", },
{ role: "redo", accelerator: "Shift+CmdOrCtrl+Z", },
{ type: "separator" },
{ role: "cut", accelerator: "CmdOrCtrl+X", },
{ role: "copy", accelerator: "CmdOrCtrl+C", },
{ role: "paste", accelerator: "CmdOrCtrl+V", },
{ role: "selectAll", accelerator: "CmdOrCtrl+A" }
]
}
]);