From c99b0b699f3b7260dd5c8218f0d108ff4585be72 Mon Sep 17 00:00:00 2001 From: Pierre Kisters <1524059+lhns@users.noreply.github.com> Date: Thu, 1 Oct 2026 04:07:13 +0200 Subject: [PATCH] VR keyboard extra keys: the helper reconnects when Steam's page closes while connecting A CDP call sent after the socket closed (e.g. Steam restarting between Runtime.enable and the first inject) waited forever, so the helper hung instead of reconnecting. Such calls now resolve empty at once. --- modules/vr-keyboard-extra-keys/xdotool-helper.mjs | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/vr-keyboard-extra-keys/xdotool-helper.mjs b/modules/vr-keyboard-extra-keys/xdotool-helper.mjs index 6aa8e0d..26ab4e4 100644 --- a/modules/vr-keyboard-extra-keys/xdotool-helper.mjs +++ b/modules/vr-keyboard-extra-keys/xdotool-helper.mjs @@ -52,6 +52,7 @@ async function session() { let id = 0; const pending = new Map(); const call = (method, params = {}) => new Promise((res) => { + if (ws.readyState !== WebSocket.OPEN) return res({}); // closed: never answered const i = ++id; pending.set(i, res); ws.send(JSON.stringify({ id: i, method, params })); }); let last; // logged when it changes (e.g. a signature error once, not every 15 s)