mirror of
https://github.com/imgfloat/server.git
synced 2026-02-05 03:39:26 +00:00
Add electron resize to server
This commit is contained in:
@@ -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();
|
||||
|
||||
24
src/main/resources/static/js/electron.js
Normal file
24
src/main/resources/static/js/electron.js
Normal 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);
|
||||
}
|
||||
Reference in New Issue
Block a user