fix(electrobun): GTK FFI direct resize via gtk_window_resize/move

Electrobun's setSize respects WebView min-size constraint. Bypass it
with direct gtk_window_resize() + gtk_window_move() FFI calls.
clearMinSizeTree() runs on every resize frame to suppress WebView
re-propagation. gtkSetFrame() exported as new RPC endpoint.
This commit is contained in:
Hibryda 2026-03-25 13:16:39 +01:00
parent e6635e436c
commit fd2f626c20
3 changed files with 39 additions and 1 deletions

View file

@ -154,6 +154,13 @@ const rpc = BrowserView.defineRPC<PtyRPCSchema>({
return { ok: true };
} catch (err) { console.error("[window.clearMinSize]", err); return { ok: false }; }
},
"window.gtkSetFrame": ({ x, y, width, height }: { x: number; y: number; width: number; height: number }) => {
try {
const { gtkSetFrame } = require("./gtk-window.ts");
const ok = gtkSetFrame((mainWindow as any).ptr, x, y, width, height);
return { ok };
} catch (err) { console.error("[window.gtkSetFrame]", err); return { ok: false }; }
},
},
messages: {},
},