in src/js/background.js [23:113]
function createWindow() {
// Create the browser window.
win = new BrowserWindow({
width: electron.screen.getPrimaryDisplay().workAreaSize.width,
height: electron.screen.getPrimaryDisplay().workAreaSize.height,
icon: path.join(__dirname, '../img/icon.png'),
webPreferences: {
enableRemoteModule: true,
nodeIntegration: true,
webviewTag: true,
},
});
const {
default: installExtension,
REACT_DEVELOPER_TOOLS,
} = require('electron-devtools-installer');
installExtension(REACT_DEVELOPER_TOOLS)
// eslint-disable-next-line no-console
.then(name => console.log(`Added Extension: ${name}`))
// eslint-disable-next-line no-console
.catch(err => console.log('An error occurred: ', err));
// and load the index.html of the app.
win.loadURL(
url.format({
pathname: path.join(__dirname, '../html/index.html'),
protocol: 'file:',
slashes: true,
})
);
// Emitted when the window is closed.
win.on('closed', () => {
// Dereference the window object, usually you would store windows
// in an array if your app supports multi windows, this is the time
// when you should delete the corresponding element.
win = null;
webserver.stop();
});
// Create the Application's main menu
var template = [
{
label: 'Application',
submenu: [
{
label: 'Quit',
accelerator: 'Command+Q',
click: function() {
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: [
{ role: 'reload' },
{ role: 'forcereload' },
{ role: 'toggledevtools' },
{ type: 'separator' },
{ role: 'resetzoom' },
{ role: 'zoomin' },
{ role: 'zoomout' },
{ type: 'separator' },
{ role: 'togglefullscreen' },
],
},
];
Menu.setApplicationMenu(Menu.buildFromTemplate(template));
}