aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/modules
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-10-29 13:12:10 +0100
committerDanilo M. <danix@danix.xyz>2026-10-29 13:12:10 +0100
commit0b63413d36146b14cfafe64c1d9ad4ccfbcab4dd (patch)
tree9843ffe43f0cec3bd55e118bcf0143178e4bc48a /desktop/modules
parent029bd2ac97d515e03ef84db4eb3aee02025d0ca0 (diff)
downloadquickshell-0b63413d36146b14cfafe64c1d9ad4ccfbcab4dd.tar.gz
quickshell-0b63413d36146b14cfafe64c1d9ad4ccfbcab4dd.zip
wallpaper: the heart is back, for the engine's per-screen lists
A heart on each gallery thumbnail adds or removes the image from the engine's list for the screen the picker targets. It is the last child of the thumbnail, so it sits above the pick MouseArea and takes its own click, and it is outlined so it reads on a light image. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'desktop/modules')
-rw-r--r--desktop/modules/appearance/WallpaperTab.qml22
1 files changed, 22 insertions, 0 deletions
diff --git a/desktop/modules/appearance/WallpaperTab.qml b/desktop/modules/appearance/WallpaperTab.qml
index b204c6c..640f1ef 100644
--- a/desktop/modules/appearance/WallpaperTab.qml
+++ b/desktop/modules/appearance/WallpaperTab.qml
@@ -339,6 +339,28 @@ Column {
}
}
+ // In the engine's list for the screen the
+ // picker targets (WallEngine.qml). Last, so it
+ // is above the pick MouseArea and takes its own
+ // click. Outlined, so it reads on a light
+ // image too.
+ Text {
+ readonly property bool on: WallEngine.listed(modelData, Wallpapers.target)
+ anchors { top: parent.top; right: parent.right; margins: 10 }
+ visible: on || thumbHover.hovered
+ // nf-md-heart, nf-md-heart_outline.
+ text: on ? "\u{F02D1}" : "\u{F02D5}"
+ color: on ? Theme.red : Theme.text
+ style: Text.Outline
+ styleColor: Qt.alpha(Theme.base, 0.6)
+ font { family: Theme.iconFamily; pixelSize: Theme.fontSize + 8 }
+ MouseArea {
+ anchors { fill: parent; margins: -4 }
+ cursorShape: Qt.PointingHandCursor
+ onClicked: WallEngine.toggle(modelData, Wallpapers.target)
+ }
+ }
+
}
}
}