2025-12-22 13:55:00 +01:00
|
|
|
import QtQuick
|
|
|
|
|
import Quickshell
|
|
|
|
|
import Quickshell.Wayland
|
2025-12-22 15:16:00 +01:00
|
|
|
import "."
|
2025-12-22 13:55:00 +01:00
|
|
|
|
|
|
|
|
WlrLayershell {
|
|
|
|
|
id: root
|
|
|
|
|
|
|
|
|
|
// 1. Send it to the bottom of the stack!
|
|
|
|
|
layer: WlrLayer.Background
|
|
|
|
|
|
|
|
|
|
// 2. Stretch it to cover the ENTIRE screen
|
|
|
|
|
anchors {
|
|
|
|
|
top: true
|
|
|
|
|
bottom: true
|
|
|
|
|
left: true
|
|
|
|
|
right: true
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 3. IMPORTANT: Tell the compositor NOT to reserve space for this.
|
|
|
|
|
// If you don't do this, your wallpaper might push your windows aside!
|
|
|
|
|
exclusionMode: ExclusionMode.Ignore
|
|
|
|
|
|
|
|
|
|
// 4. The actual content
|
2025-12-22 15:16:00 +01:00
|
|
|
|
2025-12-22 13:55:00 +01:00
|
|
|
Image {
|
2025-12-22 15:16:00 +01:00
|
|
|
id: actualWall
|
2025-12-22 13:55:00 +01:00
|
|
|
anchors.fill: parent
|
2025-12-22 15:16:00 +01:00
|
|
|
source: WallpaperStore.currentWall
|
2025-12-22 13:55:00 +01:00
|
|
|
fillMode: Image.PreserveAspectCrop
|
2025-12-22 15:16:00 +01:00
|
|
|
|
|
|
|
|
Behavior on source {
|
|
|
|
|
NumberAnimation {
|
|
|
|
|
duration: 500
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
onSourceChanged: console.log("🖼️ Wallpaper noticed change! New source: " + source)
|
2025-12-22 13:55:00 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Bonus: A dark rectangle to dim the wallpaper slightly?
|
|
|
|
|
Rectangle {
|
|
|
|
|
anchors.fill: parent
|
|
|
|
|
color: "black"
|
|
|
|
|
opacity: 0.2
|
|
|
|
|
}
|
|
|
|
|
}
|