From 09d61dc70dd3617c5b54f4c27d173c98dbcbae47 Mon Sep 17 00:00:00 2001 From: zach Date: Wed, 22 Apr 2026 15:46:53 +0200 Subject: [PATCH] restore cava in dashboard --- Drawers/Windows.qml | 60 ++++++++++---------- Modules/Dashboard/Dash/Media.qml | 96 ++++++++++++++++---------------- shell.qml | 2 +- 3 files changed, 79 insertions(+), 79 deletions(-) diff --git a/Drawers/Windows.qml b/Drawers/Windows.qml index 34bfcb7..2a5430b 100644 --- a/Drawers/Windows.qml +++ b/Drawers/Windows.qml @@ -321,36 +321,36 @@ Variants { screen: scope.modelData visibilities: visibilities - // dashboard.transform: Matrix4x4 { - // matrix: dashBg.deformMatrix - // } - // dock.transform: Matrix4x4 { - // matrix: dockBg.deformMatrix - // } - // launcher.transform: Matrix4x4 { - // matrix: launcherBg.deformMatrix - // } - // notifications.transform: Matrix4x4 { - // matrix: notifsBg.deformMatrix - // } - // osd.transform: Matrix4x4 { - // matrix: osdBg.deformMatrix - // } - // popouts.transform: Matrix4x4 { - // matrix: popoutBg.deformMatrix - // } - // resources.transform: Matrix4x4 { - // matrix: resourcesBg.deformMatrix - // } - // settings.transform: Matrix4x4 { - // matrix: settingsBg.deformMatrix - // } - // sidebar.transform: Matrix4x4 { - // matrix: sidebarBg.deformMatrix - // } - // utilities.transform: Matrix4x4 { - // matrix: utilsBg.deformMatrix - // } + dashboard.transform: Matrix4x4 { + matrix: dashBg.deformMatrix + } + dock.transform: Matrix4x4 { + matrix: dockBg.deformMatrix + } + launcher.transform: Matrix4x4 { + matrix: launcherBg.deformMatrix + } + notifications.transform: Matrix4x4 { + matrix: notifsBg.deformMatrix + } + osd.transform: Matrix4x4 { + matrix: osdBg.deformMatrix + } + popouts.transform: Matrix4x4 { + matrix: popoutBg.deformMatrix + } + resources.transform: Matrix4x4 { + matrix: resourcesBg.deformMatrix + } + settings.transform: Matrix4x4 { + matrix: settingsBg.deformMatrix + } + sidebar.transform: Matrix4x4 { + matrix: sidebarBg.deformMatrix + } + utilities.transform: Matrix4x4 { + matrix: utilsBg.deformMatrix + } } BarLoader { diff --git a/Modules/Dashboard/Dash/Media.qml b/Modules/Dashboard/Dash/Media.qml index 43e207a..4b47b81 100644 --- a/Modules/Dashboard/Dash/Media.qml +++ b/Modules/Dashboard/Dash/Media.qml @@ -38,55 +38,55 @@ Item { onTriggered: Players.active?.positionChanged() } - // ServiceRef { - // service: Audio.cava - // } + ServiceRef { + service: Audio.cava + } - // Shape { - // id: visualizer - // - // readonly property real barW: Math.max(0, (width - gap * (bars - 1)) / bars) - // readonly property int bars: Config.services.visualizerBars - // property color color: DynamicColors.palette.m3primary - // readonly property real gap: Appearance.spacing.small - // - // anchors.fill: layout - // asynchronous: true - // data: visualizerBars.instances - // preferredRendererType: Shape.CurveRenderer - // } - // - // Variants { - // id: visualizerBars - // - // model: Array.from({ - // length: Config.services.visualizerBars - // }, (_, i) => i) - // - // ShapePath { - // id: visualizerBar - // - // readonly property real magnitude: value * Config.dashboard.sizes.mediaVisualiserSize - // required property int modelData - // readonly property real value: Math.max(1e-3, Audio.cava.values[modelData]) - // - // capStyle: Appearance.rounding.scale === 0 ? ShapePath.SquareCap : ShapePath.RoundCap - // startX: (visualizer.barW / 2) + modelData * (visualizer.barW + visualizer.gap) - // startY: layout.y + layout.height - // strokeColor: visualizer.color - // strokeWidth: visualizer.barW - // - // Behavior on strokeColor { - // CAnim { - // } - // } - // - // PathLine { - // relativeX: 0 - // relativeY: -visualizerBar.magnitude - // } - // } - // } + Shape { + id: visualizer + + readonly property real barW: Math.max(0, (width - gap * (bars - 1)) / bars) + readonly property int bars: Config.services.visualizerBars + property color color: DynamicColors.palette.m3primary + readonly property real gap: Appearance.spacing.small + + anchors.fill: layout + asynchronous: true + data: visualizerBars.instances + preferredRendererType: Shape.CurveRenderer + } + + Variants { + id: visualizerBars + + model: Array.from({ + length: Config.services.visualizerBars + }, (_, i) => i) + + ShapePath { + id: visualizerBar + + readonly property real magnitude: value * Config.dashboard.sizes.mediaVisualiserSize + required property int modelData + readonly property real value: Math.max(1e-3, Audio.cava.values[modelData]) + + capStyle: Appearance.rounding.scale === 0 ? ShapePath.SquareCap : ShapePath.RoundCap + startX: (visualizer.barW / 2) + modelData * (visualizer.barW + visualizer.gap) + startY: layout.y + layout.height + strokeColor: visualizer.color + strokeWidth: visualizer.barW + + Behavior on strokeColor { + CAnim { + } + } + + PathLine { + relativeX: 0 + relativeY: -visualizerBar.magnitude + } + } + } Shape { preferredRendererType: Shape.CurveRenderer diff --git a/shell.qml b/shell.qml index 1a15c5c..892321c 100644 --- a/shell.qml +++ b/shell.qml @@ -1,6 +1,6 @@ //@ pragma UseQApplication //@ pragma Env QSG_RENDER_LOOP=threaded -//@ pragma Env QSG_RHI_BACKEND=vulkan +// @ pragma Env QSG_RHI_BACKEND=vulkan //@ pragma Env QSG_NO_VSYNC=1 //@ pragma Env QS_NO_RELOAD_POPUP=1 //@ pragma Env QT_SCALE_FACTOR_ROUNDING_POLICY=Round