From f00d51cd764432e2e018a09401fd8293463fa3cd Mon Sep 17 00:00:00 2001 From: Ruslan Date: Mon, 20 Jul 2026 19:16:02 +0000 Subject: [PATCH] nav: fullscreen on first user interaction with screen (browser policy fix) --- rdp-proxy/entrypoint.sh | 11 ++++++++++- universal-runtime/entrypoint.sh | 11 ++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/rdp-proxy/entrypoint.sh b/rdp-proxy/entrypoint.sh index 5f4e8d6..129b2cc 100644 --- a/rdp-proxy/entrypoint.sh +++ b/rdp-proxy/entrypoint.sh @@ -258,8 +258,17 @@ cat > /opt/portal/index.html < {}); + } + document.getElementById('screen').removeEventListener('pointerdown', tryFs); + } + document.getElementById('screen').addEventListener('pointerdown', tryFs, {once: true}); + })(); connect(); - setTimeout(() => { try { document.documentElement.requestFullscreen(); } catch(e){} }, 800); diff --git a/universal-runtime/entrypoint.sh b/universal-runtime/entrypoint.sh index 9b55835..a96bac4 100755 --- a/universal-runtime/entrypoint.sh +++ b/universal-runtime/entrypoint.sh @@ -289,8 +289,17 @@ cat > /opt/portal/index.html <<'HTML' }); })(); + // Enter fullscreen on first user interaction with the screen + (function(){ + function tryFs() { + if (!document.fullscreenElement) { + document.documentElement.requestFullscreen().catch(() => {}); + } + document.getElementById('screen').removeEventListener('pointerdown', tryFs); + } + document.getElementById('screen').addEventListener('pointerdown', tryFs, {once: true}); + })(); connectRfb(); - setTimeout(() => { try { document.documentElement.requestFullscreen(); } catch(e){} }, 800);