Skip to content

Commit

Permalink
fix: prevent multiple about window
Browse files Browse the repository at this point in the history
  • Loading branch information
syns2191 committed Oct 19, 2024
1 parent f8cfb51 commit 7072c60
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions packages/desktop-window/src/lib/desktop-window-about.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import * as remoteMain from '@electron/remote/main';
import { BrowserWindow, Menu } from 'electron';
import { BrowserWindow, Menu, app } from 'electron';
import * as url from 'url';
import { attachTitlebarToWindow } from 'custom-electron-titlebar/main';

Expand All @@ -16,6 +16,13 @@ export async function createAboutWindow(filePath, preloadPath?) {
const mainWindowSettings: Electron.BrowserWindowConstructorOptions = windowSetting(preloadPath);
const manager = WindowManager.getInstance();

const allwindows = BrowserWindow.getAllWindows();
const aboutWindows = allwindows.find((win) => win.getTitle() === 'About');
if (aboutWindows) {
aboutWindows.show();
return aboutWindows;
}

const window = new BrowserWindow(mainWindowSettings);
remoteMain.enable(window.webContents);
const launchPath = url.format({
Expand All @@ -42,7 +49,7 @@ export async function createAboutWindow(filePath, preloadPath?) {

manager.register(RegisteredWindow.ABOUT, window);
if (preloadPath) {
attachTitlebarToWindow(window);
window.webContents.send('hide-menu');
}
return window;
}
Expand All @@ -69,11 +76,6 @@ const windowSetting = (preloadPath) => {
};
if (preloadPath) {
mainWindowSettings.webPreferences.preload = preloadPath;
mainWindowSettings.titleBarOverlay = true;
mainWindowSettings.titleBarStyle = 'hidden';
if (process.platform === 'linux') {
mainWindowSettings.frame = false;
}
}
return mainWindowSettings;
};

0 comments on commit 7072c60

Please sign in to comment.