Add electron resize to server

This commit is contained in:
2026-01-13 14:51:39 +01:00
parent 5b0ef9c606
commit 517b957c37
2 changed files with 26 additions and 0 deletions

View File

@@ -1,7 +1,9 @@
import { BroadcastRenderer } from "./broadcast/renderer.js";
import { setUpElectronWindowResizeListener } from "./electron.js";
const canvas = document.getElementById("broadcast-canvas");
const scriptLayer = document.getElementById("broadcast-script-layer");
const renderer = new BroadcastRenderer({ canvas, scriptLayer, broadcaster, showToast });
setUpElectronWindowResizeListener(canvas);
renderer.start();

View File

@@ -0,0 +1,24 @@
export function setUpElectronWindowResizeListener(canvas) {
if (
typeof window !== "undefined" &&
window.store &&
typeof window.store.setWindowSize === "function"
) {
console.info("Electron environment detected, setting up resize listener.");
} else {
console.info("Not running in Electron environment, skipping resize listener setup.");
return;
}
const resize = () => {
const rect = canvas.getBoundingClientRect();
window.store.setWindowSize(
Math.ceil(rect.width),
Math.ceil(rect.height)
);
};
resize();
new ResizeObserver(resize).observe(canvas);
}