feat(quickshell): dashboard drawer that drops from the bar

A drawer lowered out of the underside of the bar, painted in the hull
colour and joined to it by two concave fillets so it reads as more of the
hull rather than as a floating card — caelestia's dashboard idea, in the
YoRHa language. Four columns divided by hairlines: operator and clock, the
month with today as an inverted square, the system meters, and the active
player with a hairline timeline and square transport buttons.

Opened by clicking the bar's clock (which used to pin the calendar), by
SUPER+I, or by `qs ipc call shell dashboard`. Escape or moving focus away
closes it through a HyprlandFocusGrab; Actions.dashboardClosedAt keeps the
clock click that cleared the grab from reopening it. The clock's calendar
hover is suppressed while the drawer is down, since it shows the month.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
nvrlandClaude Opus 5.5 committed 2026-10-04 20:19:30 +02:00
1 parent 18091a7109
commit ecc7d2884c
6 files changed
+688 -5

No files matched your search

+8
View File
@@ -4,6 +4,7 @@ import "root:/config"
import "root:/services"
import "root:/bar"
import "root:/launcher"
import "root:/dashboard"
import "root:/ask"
import "root:/overlays"
import "root:/lock"
@@ -14,6 +15,7 @@ import "root:/lock"
// bar/ the hull, the top bar, the rail and their modules
// popouts/ hover panels hanging off bar modules
// launcher/ the application launcher
// dashboard/ the drawer that drops from the bar
// ask/ the question panel, dropped from the top edge
// overlays/ power menu, notification toasts, OSD
// lock/ session lock
@@ -60,6 +62,12 @@ ShellRoot {
Launcher {}
}
Variants {
model: Quickshell.screens
Dashboard {}
}
Variants {
model: Quickshell.screens