// src/main/ipc/window-handlers.ts import { ipcMain } from 'electron' import { IPC_CHANNELS } from '@shared/ipc-channels' import { ipcSuccess } from '@shared/errors' import { getMainWindow } from '../windows/WindowManager' export function registerWindowHandlers(): void { ipcMain.on(IPC_CHANNELS.WINDOW.MINIMIZE, () => { getMainWindow()?.minimize() }) ipcMain.on(IPC_CHANNELS.WINDOW.MAXIMIZE, () => { const win = getMainWindow() if (win) { if (win.isMaximized()) { win.unmaximize() } else { win.maximize() } } }) ipcMain.on(IPC_CHANNELS.WINDOW.CLOSE, () => { getMainWindow()?.close() }) ipcMain.handle(IPC_CHANNELS.WINDOW.IS_MAXIMIZED, async () => { return ipcSuccess(getMainWindow()?.isMaximized() ?? false) }) }