diff --git a/package.json b/package.json index 32b378ca..0176b8f8 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "url": "https://github.com/bepass-org/oblivion-desktop/issues", "email": "ircfspace@gmail.com" }, - "version": "0.2.40-beta", + "version": "0.2.41-beta", "license": "Restrictive", "main": "./src/main/main.ts", "scripts": { diff --git a/release/app/package.json b/release/app/package.json index 65ec96c2..e5049e78 100644 --- a/release/app/package.json +++ b/release/app/package.json @@ -1,7 +1,7 @@ { "name": "oblivion-desktop", "description": "unofficial desktop version of oblivion", - "version": "0.2.40-beta", + "version": "0.2.41-beta", "homepage": "https://github.com/bepass-org/oblivion-desktop#readme", "license": "Restrictive", "author": "ircfspace+kiomarzsss (https://ircf.space/)", diff --git a/src/main/ipcListeners/wp.ts b/src/main/ipcListeners/wp.ts index f0b7e1d4..f8aa8073 100644 --- a/src/main/ipcListeners/wp.ts +++ b/src/main/ipcListeners/wp.ts @@ -93,7 +93,7 @@ ipcMain.on('wp-start', async (event, arg) => { command = path.join('assets', 'bin', 'warp-plus.exe'); } else { command = String( - path.join(__dirname, 'resources', 'assets', 'bin', 'warp-plus.exe') + path.join(app.getAppPath(), 'resources', 'assets', 'bin', 'warp-plus.exe') ).replace('/app.asar', ''); } } else { @@ -101,7 +101,7 @@ ipcMain.on('wp-start', async (event, arg) => { command = path.join('assets', 'bin', 'warp-plus'); } else { command = String( - path.join(__dirname, 'resources', 'assets', 'bin', 'warp-plus') + path.join(app.getAppPath(), 'resources', 'assets', 'bin', 'warp-plus') ).replace('/app.asar', ''); } } diff --git a/src/main/main.ts b/src/main/main.ts index d3a7582f..f8d9133f 100644 --- a/src/main/main.ts +++ b/src/main/main.ts @@ -76,6 +76,7 @@ const createWindow = async () => { fullscreenable: false, icon: getAssetPath('oblivion.png'), webPreferences: { + nativeWindowOpen: false, devTools: false, devToolsKeyCombination: false, preload: app.isPackaged @@ -97,55 +98,55 @@ const createWindow = async () => { } function createMainWindow() { - mainWindow = new BrowserWindow(config); + if (!mainWindow) { + mainWindow = new BrowserWindow(config); - mainWindow.loadURL(resolveHtmlPath('index.html')); + mainWindow.loadURL(resolveHtmlPath('index.html')); - mainWindow.on('ready-to-show', async () => { - if (!mainWindow) { - throw new Error('"mainWindow" is not defined'); - } - // await settings.get('systemTray') - if (process.env.START_MINIMIZED) { - mainWindow.minimize(); - } else { - mainWindow.show(); - } - }); - - ipcMain.on('open-devtools', async () => { - // TODO add toggle - mainWindow?.webContents.openDevTools(); - // mainWindow.webContents.closeDevTools(); - }); - - mainWindow.on('closed', () => { - disableProxy(); - mainWindow = null; - }); - - mainWindow.on('minimize', async (e: any) => { - e.preventDefault(); - if (await settings.get('systemTray')) { - mainWindow?.hide(); - } - }); - - const menuBuilder = new MenuBuilder(mainWindow); - menuBuilder.buildMenu(); - - // Open urls in the user's browser - mainWindow.webContents.setWindowOpenHandler((edata) => { - shell.openExternal(edata.url); - return { action: 'deny' }; - }); + mainWindow.on('ready-to-show', async () => { + if (!mainWindow) { + throw new Error('"mainWindow" is not defined'); + } + // await settings.get('systemTray') + if (process.env.START_MINIMIZED) { + mainWindow.minimize(); + } else { + mainWindow.show(); + } + }); + + ipcMain.on('open-devtools', async () => { + // TODO add toggle + mainWindow?.webContents.openDevTools(); + // mainWindow.webContents.closeDevTools(); + }); + + mainWindow.on('closed', () => { + disableProxy(); + mainWindow = null; + }); + + mainWindow.on('minimize', async (e: any) => { + e.preventDefault(); + if (await settings.get('systemTray')) { + mainWindow?.hide(); + } + }); + + const menuBuilder = new MenuBuilder(mainWindow); + menuBuilder.buildMenu(); + + // Open urls in the user's browser + mainWindow.webContents.setWindowOpenHandler((edata) => { + shell.openExternal(edata.url); + return { action: 'deny' }; + }); + } else { + mainWindow.show(); + } } - if (!mainWindow) { - createMainWindow(); - } else { - mainWindow.show(); - } + createMainWindow(); let appIcon = null; app?.whenReady().then(() => {