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 { BroadcastRenderer } from "./broadcast/renderer.js";
|
||||||
|
import { setUpElectronWindowResizeListener } from "./electron.js";
|
||||||
|
|
||||||
const canvas = document.getElementById("broadcast-canvas");
|
const canvas = document.getElementById("broadcast-canvas");
|
||||||
const scriptLayer = document.getElementById("broadcast-script-layer");
|
const scriptLayer = document.getElementById("broadcast-script-layer");
|
||||||
const renderer = new BroadcastRenderer({ canvas, scriptLayer, broadcaster, showToast });
|
const renderer = new BroadcastRenderer({ canvas, scriptLayer, broadcaster, showToast });
|
||||||
|
|
||||||
|
setUpElectronWindowResizeListener(canvas);
|
||||||
renderer.start();
|
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