Grill: YouTube/Vimeo embed UX in swipeable Reader #35

Closed
opened 2026-08-03 15:00:36 +00:00 by TheAnachronism · 1 comment

Part of #30
Blocked by: #32

Question

What UX should YouTube/Vimeo embeds have inside the swipeable Reader once a technical approach exists?

Decide:

  • Inline player vs poster/thumbnail + tap-to-play vs open externally
  • Sizing (full width, max height, aspect ratio)
  • Gesture conflict with horizontal article swipe and vertical scroll
  • Autoplay policy (map already forbids autoplay for direct video — same for embeds?)
  • Failure / unavailable-region behavior relative to the map’s “visible failure + open actions” rule
Part of #30 Blocked by: #32 ## Question What UX should YouTube/Vimeo embeds have inside the swipeable Reader once a technical approach exists? Decide: - Inline player vs poster/thumbnail + tap-to-play vs open externally - Sizing (full width, max height, aspect ratio) - Gesture conflict with horizontal article swipe and vertical scroll - Autoplay policy (map already forbids autoplay for direct video — same for embeds?) - Failure / unavailable-region behavior relative to the map’s “visible failure + open actions” rule
Author
Owner

Resolution

YouTube/Vimeo embed UX (v1) in the swipeable Reader:

  1. Primary interaction: poster/thumbnail card with play affordance → open the watch URL via Custom Tabs / external (url_launcher). No in-app official-embed WebView in v1 (research’s optional inline path stays a later effort unless a prototype forces revisit).
  2. Sizing: full content width, 16:9 aspect ratio, optional max height about 40–50% of the viewport so short articles aren’t dominated.
  3. Gestures: tap opens externally; horizontal article swipe and vertical scroll are unchanged — no special gesture arena (no platform WebView to fight).
  4. Autoplay: none — same policy as direct <video> / promoted video.
  5. Failure: visible placeholder/error card (including poster-load failure) with Open media (watch URL) and Open original; never a silent blank hole.
  6. Detection: allowlisted YouTube + Vimeo shapes only (per Research: YouTube and Vimeo embed approaches for Flutter Reader).
## Resolution **YouTube/Vimeo embed UX (v1) in the swipeable Reader:** 1. **Primary interaction:** poster/thumbnail card with play affordance → open the watch URL via Custom Tabs / external (`url_launcher`). **No** in-app official-embed WebView in v1 (research’s optional inline path stays a later effort unless a prototype forces revisit). 2. **Sizing:** full content width, **16:9** aspect ratio, optional max height about **40–50%** of the viewport so short articles aren’t dominated. 3. **Gestures:** tap opens externally; horizontal article swipe and vertical scroll are unchanged — no special gesture arena (no platform WebView to fight). 4. **Autoplay:** **none** — same policy as direct `<video>` / promoted video. 5. **Failure:** visible placeholder/error card (including poster-load failure) with **Open media** (watch URL) and **Open original**; never a silent blank hole. 6. **Detection:** allowlisted YouTube + Vimeo shapes only (per [Research: YouTube and Vimeo embed approaches for Flutter Reader](https://git.anachronis.dev/TheAnachronism/tt-rss-viewer/issues/32)).
Sign in to join this conversation.
No description provided.