58 lines
1.4 KiB
JavaScript
58 lines
1.4 KiB
JavaScript
|
import { app, BrowserWindow, nativeTheme } from 'electron'
|
||
|
|
||
|
try {
|
||
|
if (process.platform === 'win32' && nativeTheme.shouldUseDarkColors === true) {
|
||
|
require('fs').unlinkSync(require('path').join(app.getPath('userData'), 'DevTools Extensions'))
|
||
|
}
|
||
|
} catch (_) { }
|
||
|
|
||
|
/**
|
||
|
* Set `__statics` path to static files in production;
|
||
|
* The reason we are setting it here is that the path needs to be evaluated at runtime
|
||
|
*/
|
||
|
if (process.env.PROD) {
|
||
|
global.__statics = __dirname
|
||
|
}
|
||
|
|
||
|
let mainWindow
|
||
|
|
||
|
function createWindow () {
|
||
|
/**
|
||
|
* Initial window options
|
||
|
*/
|
||
|
mainWindow = new BrowserWindow({
|
||
|
width: 1000,
|
||
|
height: 600,
|
||
|
useContentSize: true,
|
||
|
webPreferences: {
|
||
|
// Change from /quasar.conf.js > electron > nodeIntegration;
|
||
|
// More info: https://quasar.dev/quasar-cli/developing-electron-apps/node-integration
|
||
|
nodeIntegration: process.env.QUASAR_NODE_INTEGRATION,
|
||
|
nodeIntegrationInWorker: process.env.QUASAR_NODE_INTEGRATION,
|
||
|
|
||
|
// More info: /quasar-cli/developing-electron-apps/electron-preload-script
|
||
|
// preload: path.resolve(__dirname, 'electron-preload.js')
|
||
|
}
|
||
|
})
|
||
|
|
||
|
mainWindow.loadURL(process.env.APP_URL)
|
||
|
|
||
|
mainWindow.on('closed', () => {
|
||
|
mainWindow = null
|
||
|
})
|
||
|
}
|
||
|
|
||
|
app.on('ready', createWindow)
|
||
|
|
||
|
app.on('window-all-closed', () => {
|
||
|
if (process.platform !== 'darwin') {
|
||
|
app.quit()
|
||
|
}
|
||
|
})
|
||
|
|
||
|
app.on('activate', () => {
|
||
|
if (mainWindow === null) {
|
||
|
createWindow()
|
||
|
}
|
||
|
})
|