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>
97 lines
2.0 KiB
QML
97 lines
2.0 KiB
QML
import QtQuick
|
|
import Quickshell
|
|
import "root:/config"
|
|
import "root:/services"
|
|
import "root:/bar"
|
|
import "root:/launcher"
|
|
import "root:/dashboard"
|
|
import "root:/ask"
|
|
import "root:/overlays"
|
|
import "root:/lock"
|
|
|
|
// Takemi — a YoRHa-dark Quickshell desktop: NieR:Automata's interface
|
|
// language, lit like the wallpaper.
|
|
//
|
|
// 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
|
|
// services/ data sources (fluxo, pipewire, bluez, upower, mpris, …)
|
|
// config/ palette, type, geometry, motion
|
|
ShellRoot {
|
|
// Services are lazily constructed on first use. The shell wants several of
|
|
// them warm from the start — polling, the notification server, the audio
|
|
// OSD — so touch them here rather than waiting for a hover.
|
|
Component.onCompleted: {
|
|
void Sys.cpuUsage;
|
|
void Audio.ready;
|
|
void Battery.available;
|
|
void Brightness.percent;
|
|
void Notifs.count;
|
|
void Media.hasPlayer;
|
|
void Net.wifiEnabled;
|
|
void Bt.available;
|
|
void Actions.powerMenuOpen;
|
|
void Apps.index;
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
Frame {}
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
Bar {}
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
Rail {}
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
Launcher {}
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
Dashboard {}
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
AskPanel {}
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
PowerMenu {}
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
Toasts {}
|
|
}
|
|
|
|
Variants {
|
|
model: Quickshell.screens
|
|
|
|
Osd {}
|
|
}
|
|
|
|
Lock {}
|
|
}
|