plugin: rust-side modules + theme services with serde-typed config

This commit is contained in:
Damocles 2026-05-04 22:58:12 +02:00
parent a86e90e927
commit f34f3f2f4e
95 changed files with 2477 additions and 1011 deletions

View file

@ -3,10 +3,11 @@ import Quickshell
import Quickshell.Io
import "." as M
import "../services" as S
import NovaStats as NS
M.BarModule {
id: root
active: S.Modules.workspaces.enable
active: NS.ModulesService.workspacesEnable
spacing: 4
cursorShape: Qt.ArrowCursor
@ -79,10 +80,10 @@ M.BarModule {
}
}
width: S.Theme.fontSize + 4
height: S.Theme.fontSize + 4
width: NS.ThemeService.fontSize + 4
height: NS.ThemeService.fontSize + 4
radius: width / 2
color: pill.active ? root.accentColor : (pill._hovered ? S.Theme.base03 : S.Theme.base02)
color: pill.active ? root.accentColor : (pill._hovered ? NS.ThemeService.base03 : NS.ThemeService.base02)
Behavior on color {
ColorAnimation {
duration: 150
@ -92,9 +93,9 @@ M.BarModule {
Text {
anchors.centerIn: parent
text: pill.modelData.idx
color: pill.active ? S.Theme.base00 : root.accentColor
font.pixelSize: S.Theme.fontSize - 2
font.family: S.Theme.fontFamily
color: pill.active ? NS.ThemeService.base00 : root.accentColor
font.pixelSize: NS.ThemeService.fontSize - 2
font.family: NS.ThemeService.fontFamily
font.bold: pill.active
}