aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/preload.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/preload.ts')
-rw-r--r--src/main/preload.ts12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/main/preload.ts b/src/main/preload.ts
index 52e947b..44467db 100644
--- a/src/main/preload.ts
+++ b/src/main/preload.ts
@@ -62,6 +62,10 @@ export interface ClaudeFlowAPI {
62 62
63 // Dialogs 63 // Dialogs
64 selectDirectory: () => Promise<string | null>; 64 selectDirectory: () => Promise<string | null>;
65
66 // Window
67 toggleMaximize: () => Promise<void>;
68 onWindowMaximized: (cb: (isMaximized: boolean) => void) => () => void;
65} 69}
66 70
67const api: ClaudeFlowAPI = { 71const api: ClaudeFlowAPI = {
@@ -127,6 +131,14 @@ const api: ClaudeFlowAPI = {
127 const result = await ipcRenderer.invoke("dialog:selectDirectory"); 131 const result = await ipcRenderer.invoke("dialog:selectDirectory");
128 return result; 132 return result;
129 }, 133 },
134
135 // Window
136 toggleMaximize: () => ipcRenderer.invoke("window:toggleMaximize"),
137 onWindowMaximized: (cb) => {
138 const handler = (_: IpcRendererEvent, val: boolean) => cb(val);
139 ipcRenderer.on("window:maximized", handler);
140 return () => ipcRenderer.removeListener("window:maximized", handler);
141 },
130}; 142};
131 143
132contextBridge.exposeInMainWorld("api", api); 144contextBridge.exposeInMainWorld("api", api);