diff options
Diffstat (limited to 'modules/background/Background.qml')
| -rw-r--r-- | modules/background/Background.qml | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/modules/background/Background.qml b/modules/background/Background.qml index 3da8bf9..bdba570 100644 --- a/modules/background/Background.qml +++ b/modules/background/Background.qml @@ -1,4 +1,8 @@ +pragma ComponentBehavior: Bound + +import qs.components import qs.components.containers +import qs.services import qs.config import Quickshell import Quickshell.Wayland @@ -27,7 +31,34 @@ Loader { anchors.left: true anchors.right: true - Wallpaper {} + Wallpaper { + id: wallpaper + } + + Loader { + readonly property bool shouldBeActive: Config.background.visualiser.enabled && (!Config.background.visualiser.autoHide || Hypr.monitorFor(win.modelData).activeWorkspace.toplevels.values.every(t => t.lastIpcObject.floating)) ? 1 : 0 + property real offset: shouldBeActive ? 0 : win.modelData.height * 0.2 + + anchors.fill: parent + anchors.topMargin: offset + anchors.bottomMargin: -offset + opacity: shouldBeActive ? 1 : 0 + active: opacity > 0 + asynchronous: true + + sourceComponent: Visualiser { + screen: win.modelData + wallpaper: wallpaper + } + + Behavior on offset { + Anim {} + } + + Behavior on opacity { + Anim {} + } + } Loader { anchors.right: parent.right |