const { ipcMain } = require('electron') const { app, BrowserWindow } = require('electron') const path = require('path') const cfg = require('./src/config.js') let win const config = cfg.get_config(cfg.load_parser()) function createWin() { win = new BrowserWindow({ width: 800, height: 600, minWidth: 640, minHeight: 480, webPreferences: { nodeIntegration: true, preload: path.join(__dirname + '/preload.js') }, autoHideMenuBar: true, }) win.loadFile('pages/index.html'); if(process.platform !== 'darwin') { win.removeMenu(); } win.on('closed', () => { win = null }); } app.on('ready', createWin); // on mac just because the windows are closed doesn't mean the application is too // ! The toolbar keeps things alive against its will app.on('window-all-closed', () => { if(process.platform !== 'darwin') { app.quit() } }); app.on('activate', () => { if(win === null) { createWin(); load_config('./example-dev-config.json'); // for now } }); // returns the config ipcMain.on('config-request', (event, _arg) => { event.returnValue = config })