diff --git a/src/main/window.ts b/src/main/window.ts index 72085f0..9dcbfc9 100644 --- a/src/main/window.ts +++ b/src/main/window.ts @@ -12,7 +12,7 @@ export let mainWindow: BrowserWindow | null = null let quitTimeout: NodeJS.Timeout | null = null export async function createWindow(): Promise { - const { useWindowFrame = false } = await getAppConfig() + const { useWindowFrame = false, silentStart = false, autoQuitWithoutCore = false, autoQuitWithoutCoreDelay = 60 } = await getAppConfig() const mainWindowState = windowStateKeeper({ defaultWidth: 800, defaultHeight: 600, @@ -47,7 +47,7 @@ export async function createWindow(): Promise { }) mainWindowState.manage(mainWindow) - setupWindowEvents(mainWindow, mainWindowState) + setupWindowEvents(mainWindow, mainWindowState, { silentStart, autoQuitWithoutCore, autoQuitWithoutCoreDelay }) if (is.dev) { mainWindow.webContents.openDevTools() @@ -60,17 +60,20 @@ export async function createWindow(): Promise { } } +interface WindowConfig { + silentStart: boolean + autoQuitWithoutCore: boolean + autoQuitWithoutCoreDelay: number +} + function setupWindowEvents( window: BrowserWindow, - windowState: ReturnType + windowState: ReturnType, + config: WindowConfig ): void { - window.on('ready-to-show', async () => { - const { - silentStart = false, - autoQuitWithoutCore = false, - autoQuitWithoutCoreDelay = 60 - } = await getAppConfig() + const { silentStart, autoQuitWithoutCore, autoQuitWithoutCoreDelay } = config + window.on('ready-to-show', () => { if (autoQuitWithoutCore && !window.isVisible()) { scheduleQuitWithoutCore(autoQuitWithoutCoreDelay) }