docs: expand UIFIX-05 — PiP must survive tab changes and buffering
This commit is contained in:
parent
e1a3f31a0a
commit
bd6958255a
@ -26,7 +26,7 @@ declared exit criteria (multinode pass + workstreams B/C/F), `.planning/codebase
|
||||
- [ ] **UIFIX-02**: The connected-nodes list scrolls at row-matched height — its height tracks the taller right-hand sibling in the row and the inner list scrolls within it, never growing to fit all rows scroll-free (BLOCKER)
|
||||
- [ ] **UIFIX-03**: On short viewports the onboarding confirmation tickbox is discoverably visible — an on-brand affordance (scroll cue, sticky footer, or equivalent) makes it obvious without altering tall-screen appearance (BLOCKER)
|
||||
- [ ] **UIFIX-04**: Paid Files pictures open in the app's lightbox, not a browser tab — consistent with the rest of the app's media UX
|
||||
- [ ] **UIFIX-05**: Entering picture-in-picture on a video closes the lightbox with a fluid on-brand animation
|
||||
- [ ] **UIFIX-05**: Picture-in-picture is robust — entering PiP closes the lightbox with a fluid on-brand animation, and an active PiP session survives main-tab changes and video buffering pauses (only an explicit user stop ends it)
|
||||
- [ ] **UIFIX-06**: Surfaces with genuinely slow opens show house-style loader states — no dead-feeling clicks (cached revisits stay spinner-free per PERF-02)
|
||||
|
||||
### UI Performance (PERF)
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
---
|
||||
created: 2026-07-30T22:19:31.770Z
|
||||
title: Picture-in-picture should close the lightbox with a fluid animation
|
||||
title: PiP robustness — close lightbox fluidly, survive tab changes and buffering
|
||||
area: ui
|
||||
severity: major
|
||||
files:
|
||||
@ -9,8 +9,15 @@ files:
|
||||
|
||||
## Problem
|
||||
|
||||
Dorian (2026-07-30): entering picture-in-picture on a video does not close the lightbox — the lightbox stays open behind/around the PiP window. The handoff should close the lightbox with a fluid animation (lightbox shrinks/hands off into the PiP window rather than abruptly).
|
||||
Dorian (2026-07-30), two reports:
|
||||
1. Entering picture-in-picture on a video does not close the lightbox — it should close with a fluid on-brand animation as PiP begins.
|
||||
2. "Picture in picture must survive tab changes or video buffering pauses, doesn't seem to, please fix." — PiP currently dies when switching main tabs and/or when the video pauses to buffer.
|
||||
|
||||
Suspect for the tab-change death: phase 2's KeepAlive lifecycle teardowns (02-04 moved intervals/listeners to onDeactivated — if any teardown pauses or resets media elements on deactivate, that kills PiP). Removing the video element from the DOM also ends PiP by browser design — the kept-alive instance should actually HELP here (element persists off-screen) if nothing pauses it. Buffering-pause death is likely separate close-on-pause logic in the lightbox/player. 02-08's classification report will pin the exact causes.
|
||||
|
||||
## Solution
|
||||
|
||||
Listen for the PiP enter event on the video element; animate the lightbox closed (house-style transition) as PiP begins. Tracked as UIFIX-05 (phase 1). Await 02-08's classification report for exact file/line pointers.
|
||||
- PiP enter → close the lightbox with a house-style fluid animation (handoff feel).
|
||||
- While PiP is active: the owning video element must not be paused/reset/unmounted by tab deactivation — exempt media playback from deactivate teardown when `document.pictureInPictureElement` is the view's video (or reparent the video to a persistent host).
|
||||
- Buffering (`waiting` events / `pause` from buffering) must not close PiP or the session — only explicit user stop should.
|
||||
Tracked as UIFIX-05 (phase 1 gap plan).
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user