From f388d64f3baa44dd5e137472e078817d17ac2f64 Mon Sep 17 00:00:00 2001 From: Russell Ballestrini Date: Thu, 4 Jun 2026 10:01:17 -0400 Subject: [PATCH] =?UTF-8?q?Revert=20"zebra-spaces:=20auto-rejoin=20pre-fil?= =?UTF-8?q?ls=20code=20only"=20=E2=80=94=20restore=20auto-join?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The one-extra-tap trade was supposed to fix Firefox Android listener audio by preserving the entry-click gesture. In practice the phone listener still landed silent on rejoin AND we paid the friction cost on every tab refresh. Restore the original setTimeout(joinSpace, 100) so a hard refresh resumes the last space the way every other refresh in this codebase has. The Firefox Android autoplay issue is real but lives in the audio pool / attachSfuTrack path, not at the auto-rejoin boundary. --- web/zebra-spaces.html | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/web/zebra-spaces.html b/web/zebra-spaces.html index 978325c..8dd8665 100644 --- a/web/zebra-spaces.html +++ b/web/zebra-spaces.html @@ -4872,12 +4872,8 @@ $('btn-copy-share').addEventListener('click', async () => { return; } $('rdv-code').value = saved; - /* Don't auto-call joinSpace. Without a user gesture the audio - * pool can't be primed (Firefox Android refuses unmuted autoplay) - * and listener phones land silent. Pre-fill the code; one tap on - * 'enter' resumes with working audio. */ - logLine('', 'last space: '+saved+' — click enter to resume'); - setStatus('click enter to resume — '+saved, 'warn'); + logLine('', 'auto-rejoining last space …'); + setTimeout(() => { joinSpace().catch(e => logLine('err', 'auto-rejoin failed: ' + e.message)); }, 100); })(); /* games as left-column tiles — click to spotlight, broadcast through @@ -4948,8 +4944,8 @@ logLine('', 'ready — pick a handle, type a rendezvous code, enter the space');