feat(panels): peek-open side panels with a docked tab

The shared SidePanel now follows the nav rail's model, so Filters, Plex and
Playlists all inherit it: unpinned it sits as a small tab docked flush against
the rail (replacing the full-height vertical strip) and expands into the card on
hover or keyboard focus without pushing content; pinned it stays expanded
in-flow. The collapse toggle became pin/unpin, and panels now default to
unpinned. The tab carries the active-filter count and an accent ring.

The tab stays mounted under the open card on purpose: swapping it out from under
the pointer drops the hover that opened the card, and unmounting it while
focused strands keyboard focus.

Measured: feed content starts at 123px instead of 336px when unpinned.
This commit is contained in:
2026-07-15 20:57:21 +02:00
parent 11451c1af2
commit 79d9bca290
4 changed files with 99 additions and 78 deletions
+2 -2
View File
@@ -16,8 +16,8 @@
"hideWidget": "Hide widget",
"expand": "Expand",
"collapse": "Collapse",
"collapsePanel": "Collapse filters",
"expandPanel": "Expand filters",
"pin": "Pin panel open",
"unpin": "Unpin panel",
"any": "Any",
"all": "All",
"tagModeTooltip": "Match any vs all selected tags",
+2 -2
View File
@@ -16,8 +16,8 @@
"hideWidget": "Modul elrejtése",
"expand": "Kibontás",
"collapse": "Összecsukás",
"collapsePanel": "Szűrők összecsukása",
"expandPanel": "Szűrők kibontása",
"pin": "Panel rögzítése nyitva",
"unpin": "Panel rögzítésének feloldása",
"any": "Bármelyik",
"all": "Összes",
"tagModeTooltip": "Bármelyik vagy az összes kijelölt címke illeszkedjen",