From d3e2811bd0ef53d9ab8e66b8d2f6fa8cae5fddc9 Mon Sep 17 00:00:00 2001 From: Nicolas Date: Tue, 15 Sep 2026 11:39:32 +0200 Subject: [PATCH] Auto-hide the bottom bar down to just its seek line Reported right after the native-controls replacement shipped: the bottom bar, now always visible, sits exactly where a native subtitle renders and was masking it. Same fix every real video player already uses: collapse to a minimal state after a stretch of no activity, expand again on the slightest interaction. #bottomBar gets a .minimal class (3s of no activity) that transitions away its padding/background/border and the buttons row's height/ opacity - #progressBar itself (and its own generous invisible seek hit-area) is untouched, so a thin line is always there, just without the box around it once minimal. Expands on any pointer activity anywhere in the player, or while the pointer sits on the bar itself (hovering pauses the countdown entirely rather than racing it). Stays expanded outright while genuinely paused, and every discrete playback event re-arms the countdown too - not just raw pointer movement - so resuming from pause restarts it instead of leaving the bar stuck open. Applies to host and follower alike. Verified: full typecheck/build. Confirmed in a real browser against the compiled bundle, side by side with an actual subtitle-shaped overlay: the expanded bar visibly overlaps it, the minimal state leaves it fully readable. Not driven through a real wall-clock wait for the timer itself - the class-toggling/transition logic was checked directly instead. Co-Authored-By: Claude Sonnet 5 --- README.md | 4 +- client/src/views/player/Player.css | 33 ++++++++++++++++- client/src/views/player/Player.ts | 59 ++++++++++++++++++++++++++++++ docs/architecture.md | 35 ++++++++++++++++++ 4 files changed, 128 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 80ea669..1fb5a59 100644 --- a/README.md +++ b/README.md @@ -309,7 +309,9 @@ Then put it behind your existing reverse proxy like everything else - [x] Reworked the video player's bottom bar (episode/request actions/ fullscreen, one bar instead of three floating pieces) and added a real fullscreen toggle — fullscreen now targets the whole player, - not just the `