import { BrowserWindow, shell } from 'electron'; import { defineIpcHandler } from './ipc-handlers'; /** * Register all window-related IPC handlers */ export function registerWindowHandlers(): void { defineIpcHandler('window-minimize', () => { const window = BrowserWindow.getFocusedWindow(); if (window) window.minimize(); }); defineIpcHandler('window-maximize', () => { const window = BrowserWindow.getFocusedWindow(); if (window) { if (window.isMaximized()) { window.unmaximize(); } else { window.maximize(); } } }); defineIpcHandler('window-close', () => { const window = BrowserWindow.getFocusedWindow(); if (window) window.close(); }); defineIpcHandler('window-is-maximized', (): boolean => { const window = BrowserWindow.getFocusedWindow(); return window ? window.isMaximized() : false; }); defineIpcHandler('open-external', (_event, url: string) => { shell.openExternal(url); }); }