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,6 +3,7 @@ import Quickshell
import Quickshell.Wayland
import "." as M
import "../services" as S
import NovaStats as NS
// Bar panel - fullscreen transparent window so content can resize freely
// without triggering Wayland surface resizes.
@ -83,7 +84,7 @@ PanelWindow {
}
_winVisible = true;
hideAnim.stop();
if (S.Theme.reducedMotion) {
if (S.ThemeUtil.reducedMotion) {
panelContainer.opacity = 1;
panelContainer.y = 0;
} else {
@ -97,7 +98,7 @@ PanelWindow {
if (!_winVisible)
return;
showAnim.stop();
if (S.Theme.reducedMotion) {
if (S.ThemeUtil.reducedMotion) {
_winVisible = false;
dismissed();
} else {
@ -185,7 +186,7 @@ PanelWindow {
y: panelContainer.y
width: panelContainer.width
height: panelContainer.height
opacity: panelContainer.opacity * Math.max(S.Theme.barOpacity, 0.85)
opacity: panelContainer.opacity * Math.max(NS.ThemeService.barOpacity, 0.85)
accentColor: root.accentColor
}
@ -228,7 +229,7 @@ PanelWindow {
color: "transparent"
border.color: root.accentColor
border.width: 1
radius: S.Theme.radius
radius: NS.ThemeService.radius
opacity: panelContainer.opacity
}
}