2016-10-30 11:57:12 +01:00
|
|
|
const electron = require('electron'); // eslint-disable-line
|
|
|
|
const defaultMenu = require('electron-default-menu');
|
|
|
|
|
|
|
|
const Menu = electron.Menu;
|
|
|
|
const dialog = electron.dialog;
|
|
|
|
|
|
|
|
const homepage = 'https://github.com/mifi/lossless-cut';
|
|
|
|
|
2016-11-05 21:22:31 +01:00
|
|
|
module.exports = (app, mainWindow) => {
|
2016-10-30 11:57:12 +01:00
|
|
|
const menu = defaultMenu(app, electron.shell);
|
|
|
|
|
2016-11-05 21:22:31 +01:00
|
|
|
const editMenuIndex = menu.findIndex(item => item.Label === 'Edit');
|
|
|
|
if (editMenuIndex >= 0) menu.splice(editMenuIndex, 1);
|
2016-10-30 11:57:12 +01:00
|
|
|
|
2016-11-05 21:22:31 +01:00
|
|
|
menu.splice((process.platform === 'darwin' ? 1 : 0), 0, {
|
2016-10-30 11:57:12 +01:00
|
|
|
label: 'File',
|
|
|
|
submenu: [
|
|
|
|
{
|
|
|
|
label: 'Open',
|
|
|
|
accelerator: 'CmdOrCtrl+O',
|
|
|
|
click() {
|
2016-11-08 20:36:44 +01:00
|
|
|
dialog.showOpenDialog({ properties: ['openFile'] }, (filePaths) => {
|
|
|
|
mainWindow.webContents.send('file-opened', filePaths);
|
2016-10-30 11:57:12 +01:00
|
|
|
});
|
|
|
|
},
|
|
|
|
},
|
|
|
|
],
|
|
|
|
});
|
|
|
|
|
2016-11-05 21:22:31 +01:00
|
|
|
const helpIndex = menu.findIndex(item => item.role === 'help');
|
|
|
|
if (helpIndex >= 0) {
|
|
|
|
menu.splice(helpIndex, 1, {
|
|
|
|
role: 'help',
|
|
|
|
submenu: [
|
|
|
|
{
|
|
|
|
label: 'Learn More',
|
|
|
|
click() { electron.shell.openExternal(homepage); },
|
|
|
|
},
|
|
|
|
],
|
|
|
|
});
|
|
|
|
}
|
2016-10-30 11:57:12 +01:00
|
|
|
|
|
|
|
Menu.setApplicationMenu(Menu.buildFromTemplate(menu));
|
|
|
|
};
|