import QtQuick import Quickshell import Quickshell.Wayland import "." as M PanelWindow { id: root required property var screen color: "transparent" WlrLayershell.layer: WlrLayer.Background WlrLayershell.exclusiveZone: -1 WlrLayershell.namespace: "nova-overview-backdrop" mask: Region {} anchors.top: true anchors.left: true anchors.right: true anchors.bottom: true Rectangle { anchors.fill: parent color: M.Theme.base01 } ShaderEffect { id: fx anchors.fill: parent fragmentShader: Quickshell.shellPath("modules/hex_wave.frag.qsb") property real uSize: 50.0 property real uWavePhase: -200 property vector4d uResolution: Qt.vector4d(width, height, 0, 0) property color uC0: M.Theme.base0C property color uC1: M.Theme.base0E property color uC2: M.Theme.base09 // Wave animation: 6s sweep + 8s pause SequentialAnimation on uWavePhase { loops: Animation.Infinite running: true NumberAnimation { from: -200 to: fx.width + 200 duration: 6000 easing.type: Easing.InOutSine } PauseAnimation { duration: 8000 } } } }