mirror of
https://github.com/screentinker/screentinker.git
synced 2026-06-17 03:32:32 -06:00
The content-tab preview embedded a RAW iframe with enablejsapi=1 (baked into the stored /embed URL by /youtube) plus origin=window.location.origin — but the content tab loads the YouTube IFrame API zero times. enablejsapi=1 + origin tells YouTube's player to expect a postMessage handshake from a parent JS API that never exists here, which surfaces as "Video player configuration error" (153). Same-video proof: it plays on the device player (which loads iframe_api + uses YT.Player, so the handshake completes) and failed only on the content tab — so it was never a video/embeddability problem, purely the embed construction. Fix: the preview is passive (never drives playback via JS), so it must not declare the JS API — strip enablejsapi + origin, leaving a plain /embed/ID (the form that plays in a bare tab). Did NOT touch /youtube storage (the player extracts the videoId and ignores stored params, so the baked-in enablejsapi is harmless there). Retracts the earlier wrong "validate embeddability at add-time" diagnosis (never built — it would have rejected this embeddable video). Frontend-only; suite 149 green. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| assets | ||
| compare | ||
| css | ||
| guides | ||
| js | ||
| legal | ||
| vendor | ||
| agency.html | ||
| api-docs.html | ||
| index.html | ||
| landing.html | ||
| manifest.json | ||
| robots.txt | ||
| sitemap.xml | ||
| sw-admin.js | ||