diff --git a/README.md b/README.md index 9024002..f90bd76 100644 --- a/README.md +++ b/README.md @@ -344,6 +344,10 @@ Then put it behind your existing reverse proxy like everything else action — resolved server-side (one atomic operation, not one request per track) the same way launching a playlist already expands into everything it contains — see docs/architecture.md +- [x] Picture-in-picture for the video player (standard + `requestPictureInPicture`, confirmed present on Android Chrome) — + asked for directly for mobile, where there's no second window to + put this app in while switching apps — see docs/architecture.md - [ ] Try a full party end-to-end with two real accounts (still the main gap) - [ ] Try casting to a real Chromecast (only the SDK's own bootstrap is confirmed here — no real device/session) diff --git a/client/src/views/player/Player.css b/client/src/views/player/Player.css index 04fce66..54412fe 100644 --- a/client/src/views/player/Player.css +++ b/client/src/views/player/Player.css @@ -366,6 +366,15 @@ .fsBtn:hover { background: rgba(255, 255, 255, .18); } +/* #pipBtn while active - same "clearly-on" treatment as .iconBtn's own + [aria-pressed="true"] rule (#castBtn), just scoped to .fsBtn instead - + the two aren't combined onto one shared class since .iconBtn and + .fsBtn otherwise disagree on padding/border-radius/background. */ +.fsBtn[aria-pressed="true"] { + color: #ff9800; + background: rgba(255, 152, 0, .18); +} + /* Replaces the video content while casting - the local