diff options
| author | LLLL Colonq <llll@colonq> | 2025-04-15 22:10:10 -0400 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2025-04-15 22:10:10 -0400 |
| commit | 8fdce1b98765e23b8953ba9e0f173c544bf04278 (patch) | |
| tree | b1387939ead321c88fcd392b8ddea44c2fccd04f /src | |
| parent | b31fd7881f8da11dbdd1cc259907b535d96a47a4 (diff) | |
works!
Diffstat (limited to 'src')
| -rw-r--r-- | src/UI.js | 35 |
1 files changed, 25 insertions, 10 deletions
@@ -50,15 +50,30 @@ export const _onInput = (el) => (f) => () => { }); }; +let SOCKET = null; +function connectRefreshSocket(url, iframe) { + if (!SOCKET) { + SOCKET = new WebSocket(url); + SOCKET.addEventListener("open", (ev) => { + console.log("connected"); + }); + SOCKET.addEventListener("close", (ev) => { + console.log("closed"); + SOCKET = null; + }); + SOCKET.addEventListener("error", (ev) => { + console.log("error"); + SOCKET = null; + }); + const select = document.getElementById("lcolonq-gizmo-select"); + SOCKET.addEventListener("message", async (ev) => { + console.log(`incoming: ${ev.data}`) + if (select.value == ev.data) { + iframe.src = iframe.src; + } + }); + } +}; export const _startBufferRefresh = (url) => (iframe) => () => { - const socket = new WebSocket(url); - socket.addEventListener("open", (ev) => { - console.log("connected"); - }); - const select = document.getElementById("lcolonq-gizmo-select"); - socket.addEventListener("message", async (ev) => { - if (select.value == ev.data) { - iframe.src = iframe.src; - } - }); + window.setInterval(() => connectRefreshSocket(url, iframe), 1000); }; |
