const { BrowserWindow, app } = require('electron'); function createWindow() { global.p3x.onenote.window.onenote = new BrowserWindow({ icon: global.p3x.onenote.iconFile, title: `${global.p3x.onenote.title} v${global.p3x.onenote.pkg.version}`, backgroundColor: 'black', }); global.p3x.onenote.setVisible(true); global.p3x.onenote.window.onenote.loadURL(`file://${__dirname}/../../../window/onenote/index.html`); global.p3x.onenote.window.onenote.on('minimize', function (event) { event.preventDefault() global.p3x.onenote.setVisible(false, true); }); global.p3x.onenote.window.onenote.on('close', function (event) { if (!app.isQuiting) { event.preventDefault() global.p3x.onenote.setVisible(false); } return false; }); global.p3x.onenote.window.onenote.on('focus', () => { global.p3x.onenote.window.onenote.webContents.send('p3x-onenote-action', { action: 'focus' }) }) const windowBounds = global.p3x.onenote.conf.get('window-bounds'); if (windowBounds !== null && windowBounds !== undefined) { global.p3x.onenote.window.onenote.setBounds(windowBounds); } const {autoUpdater} = require("electron-updater"); autoUpdater.on('checking-for-update', () => { global.p3x.onenote.window.onenote.webContents.send('p3x-onenote-action', { action: 'toast', message: global.p3x.onenote.lang.updater["checking-for-update"] }) }) autoUpdater.on('update-available', (info) => { global.p3x.onenote.window.onenote.webContents.send('p3x-onenote-action', { action: 'toast', message: global.p3x.onenote.lang.updater["update-available"] }) }) autoUpdater.on('update-not-available', (info) => { global.p3x.onenote.window.onenote.webContents.send('p3x-onenote-action', { action: 'toast', message: global.p3x.onenote.lang.updater["update-not-available"] }) }) autoUpdater.on('error', (error) => { console.error(error) global.p3x.onenote.window.onenote.webContents.send('p3x-onenote-action', { action: 'toast', error: error, message: global.p3x.onenote.lang.updater["error"]({ errorMessage: error.message.split('\n')[0] }) }) }) autoUpdater.on('download-progress', (progressObj) => { /* let log_message = "Download speed: " + progressObj.bytesPerSecond; log_message = log_message + ' - Downloaded ' + progressObj.percent + '%'; log_message = log_message + ' (' + progressObj.transferred + "/" + progressObj.total + ')'; */ global.p3x.onenote.window.onenote.webContents.send('p3x-onenote-action', { action: 'toast', message: p3x.onenote.lang.updater["download-progress"]({ progressObj: progressObj, }) }) }) autoUpdater.on('update-downloaded', (info) => { global.p3x.onenote.window.onenote.webContents.send('p3x-onenote-action', { action: 'toast', message: p3x.onenote.lang.updater["update-downloaded"], }) }); autoUpdater.checkForUpdatesAndNotify(); } module.exports = createWindow;