diff --git a/electron/main/ipc.ts b/electron/main/ipc.ts index 928a56d..aa5e5e9 100644 --- a/electron/main/ipc.ts +++ b/electron/main/ipc.ts @@ -81,6 +81,11 @@ export function setupIpc(win: BrowserWindow): void { win.setPosition(x, y) }) + ipcMain.handle('window:resizeMain', (_event, width: number) => { + const [wx, wy] = win.getPosition() + win.setBounds({ x: wx, y: wy, width: Math.max(200, Math.min(width, 1200)), height: 64 }) + }) + ipcMain.handle('screenshot:start', () => { log.info('IPC: screenshot:start') startScreenshot(win) diff --git a/electron/preload/preload.ts b/electron/preload/preload.ts index d199853..1911387 100644 --- a/electron/preload/preload.ts +++ b/electron/preload/preload.ts @@ -3,7 +3,8 @@ import { contextBridge, ipcRenderer } from 'electron' contextBridge.exposeInMainWorld('electronAPI', { window: { dragMove: (deltaX: number, deltaY: number) => ipcRenderer.invoke('window:dragMove', { deltaX, deltaY }), - dragEnd: (x: number, y: number) => ipcRenderer.invoke('window:dragEnd', { x, y }) + dragEnd: (x: number, y: number) => ipcRenderer.invoke('window:dragEnd', { x, y }), + resizeMain: (width: number) => ipcRenderer.invoke('window:resizeMain', width) }, screenshot: { diff --git a/src/components/FloatingToolbar.vue b/src/components/FloatingToolbar.vue index e948064..8cc5a2e 100644 --- a/src/components/FloatingToolbar.vue +++ b/src/components/FloatingToolbar.vue @@ -1,5 +1,5 @@