Electronアプリをビルドしたら、コピペもリロードもできなくなってしまったので(メニューを設定しないとQuitしか使えなくなる仕様らしい)、メニューのテンプレートをまとめておく。
Code : https://github.com/mo49/electron_test
const {app, Menu} = require('electron');
function createMenu() {
const menuTemplate = [
{
submenu: [
{
label: 'Quit',
accelerator: 'Cmd+Q',
click() {
app.quit();
}
}
]
},
{
label: "Edit",
submenu: [
{ label: "Undo", accelerator: "CmdOrCtrl+Z", selector: "undo:" },
{ label: "Redo", accelerator: "Shift+CmdOrCtrl+Z", selector: "redo:" },
{ type: "separator" },
{ label: "Cut", accelerator: "CmdOrCtrl+X", selector: "cut:" },
{ label: "Copy", accelerator: "CmdOrCtrl+C", selector: "copy:" },
{ label: "Paste", accelerator: "CmdOrCtrl+V", selector: "paste:" },
{ label: "Select All", accelerator: "CmdOrCtrl+A", selector: "selectAll:" },
]
},
{
label: 'View',
submenu: [
{
label: 'Reload',
accelerator: 'CmdOrCtrl+R',
click(item, focusedWindow){
if(focusedWindow) focusedWindow.reload();
},
},
{
label: 'Toggle Developer Tools',
accelerator: (process.platform === 'darwin' ? 'Alt+Command+I' : 'Ctrl+Shift+I'),
click(item, focusWindow) {
if (focusWindow) {
focusWindow.webContents.toggleDevTools();
}
}
},
{ type: 'separator' },
{ role: 'resetzoom' },
{ role: 'zoomin' },
{ role: 'zoomout' },
]
}
];
const menu = Menu.buildFromTemplate(menuTemplate);
Menu.setApplicationMenu(menu);
}