diff --git a/README.md b/README.md index 5bf6a04..55edfb5 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 - [x] Installable as a PWA (manifest + icons, standalone display, no service worker — this app has nothing worth caching offline) — see docs/architecture.md 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