From a4c85eaabc5bfbfb846c5bae37f59f4a1a423ba4 Mon Sep 17 00:00:00 2001 From: ScreenTinker Date: Tue, 28 Apr 2026 15:36:39 -0500 Subject: [PATCH] Remove playerContainer position:relative override that nuked YT iframe MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit createYoutubeEmbed set container.style.position = 'relative' to anchor the click-to-unmute overlay. That overrode #playerContainer's position:fixed/inset:0 — the container fell into normal flow with zero height (the YT iframe inside has no intrinsic size), so the new absolute-positioned iframe rendered as 100% of 0 = black screen. The container is already position:fixed, so absolute children anchor to it correctly without the override. Removed the line. Bumped SW cache to v7. Co-Authored-By: Claude Opus 4.7 (1M context) --- server/player/index.html | 5 ++++- server/player/sw.js | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/server/player/index.html b/server/player/index.html index 6da4291..a56399b 100644 --- a/server/player/index.html +++ b/server/player/index.html @@ -689,7 +689,10 @@ } overlay.remove(); }; - container.style.position = 'relative'; + // Don't override container.style.position here — #playerContainer is already + // position:fixed so absolute children anchor to it. Setting position:relative + // collapsed the container to 0 height (no content sizing it in normal flow), + // which made the YT iframe render black. container.appendChild(overlay); } diff --git a/server/player/sw.js b/server/player/sw.js index ef51f89..1ba0022 100644 --- a/server/player/sw.js +++ b/server/player/sw.js @@ -1,4 +1,4 @@ -const CACHE_NAME = 'rd-player-v6'; +const CACHE_NAME = 'rd-player-v7'; // Install: skip waiting to activate immediately self.addEventListener('install', (event) => {