From c3f41daefafe6386e63a75c1b6f2115e014c54ce Mon Sep 17 00:00:00 2001 From: Sindre Sorhus Date: Sun, 17 Jul 2016 03:20:52 +0200 Subject: [PATCH] menu improvements (#185) - Add missing separator after `About`. - Use `role` instead of deprecated `selector` for menu items - Add `undo` and `redo` menu items. Both Terminal and iTerm have these. - Remove indent of the report issue template. The indent ended up in the issue body, which looks weird. - Add separator after `New Tab`. This is how iTerm does it. --- menu.js | 44 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 9 deletions(-) diff --git a/menu.js b/menu.js index 40247d63..08dcfc7b 100644 --- a/menu.js +++ b/menu.js @@ -14,6 +14,9 @@ module.exports = function createMenu ({ createWindow, updatePlugins }) { { role: 'about' }, + { + type: 'separator' + }, { label: 'Preferences...', accelerator: 'Cmd+,', @@ -71,6 +74,9 @@ module.exports = function createMenu ({ createWindow, updatePlugins }) { } } }, + { + type: 'separator' + }, { label: 'Close', accelerator: 'CmdOrCtrl+W', @@ -85,10 +91,30 @@ module.exports = function createMenu ({ createWindow, updatePlugins }) { { label: 'Edit', submenu: [ - { label: 'Copy', accelerator: 'CmdOrCtrl+C', selector: 'copy:' }, - { label: 'Paste', accelerator: 'CmdOrCtrl+V', selector: 'paste:' }, - { label: 'Select All', accelerator: 'CmdOrCtrl+A', selector: 'selectAll:' }, - { type: 'separator' }, + { + role: 'undo' + }, + { + role: 'redo' + }, + { + type: 'separator' + }, + { + role: 'cut' + }, + { + role: 'copy' + }, + { + role: 'paste' + }, + { + role: 'selectall' + }, + { + type: 'separator' + }, { label: 'Clear', accelerator: 'CmdOrCtrl+K', @@ -228,13 +254,13 @@ module.exports = function createMenu ({ createWindow, updatePlugins }) { label: 'Report an Issue...', click () { const body = ` - + - - +- - ${app.getName()} ${app.getVersion()} - Electron ${process.versions.electron} - ${process.platform} ${process.arch} ${os.release()}`; +${app.getName()} ${app.getVersion()} +Electron ${process.versions.electron} +${process.platform} ${process.arch} ${os.release()}`; shell.openExternal(`https://github.com/zeit/hyperterm/issues/new?body=${encodeURIComponent(body)}`); }