diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-06 12:16:02 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-06 12:16:02 +0200 |
| commit | d52951a31ad8207db6f7dc56ba9e9bc11e3cbe83 (patch) | |
| tree | 511ac2f7e3fd341e05e16d98e29b7ca8572e9932 | |
| parent | 14fe30e906cd93404c637587a22381c6eff5329a (diff) | |
| download | quickshell-d52951a31ad8207db6f7dc56ba9e9bc11e3cbe83.tar.gz quickshell-d52951a31ad8207db6f7dc56ba9e9bc11e3cbe83.zip | |
The reverse image search never worked in practice: the clipboard-and-paste
route to TinEye was the only one left after scripted uploads hit bot and
consent walls, and it still left finding and replacing the file by hand.
wallhaven-dl, a separate app, does both the search for a larger copy and
general wallpaper search and download, so the button now launches it and
the TinEye code is removed rather than hidden.
The button is always shown, not only for a low-res staged image, since the
app is useful beyond upscaling. It launches through gtk-launch and the
app's desktop entry, which needs no ~/bin on quickshell's PATH and keeps the
app's taskbar icon, and closes the panel so the window does not open under
the overlay.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
| -rw-r--r-- | appearance/AppearancePanel.qml | 44 | ||||
| -rw-r--r-- | appearance/README.md | 12 |
2 files changed, 14 insertions, 42 deletions
diff --git a/appearance/AppearancePanel.qml b/appearance/AppearancePanel.qml index 9b895f8..77053b3 100644 --- a/appearance/AppearancePanel.qml +++ b/appearance/AppearancePanel.qml @@ -625,41 +625,17 @@ Scope { color: Wallpapers.qualityColor(subject, Wallpapers.target) } - // A reverse image search for a larger copy of the staged - // image. Staged, not hovered: the pointer leaves the - // thumbnail to reach the button. A search engine cannot be - // handed a local file in a URL and its upload endpoints - // sit behind bot and consent walls, so the image goes on - // the clipboard and the browser opens TinEye, which takes - // a pasted image and sorts its matches by size. The upload - // is the paste, made by the user in the browser. Always - // PNG: Firefox hands a page only image/png from the - // clipboard, so a JPEG copied as itself pasted nothing. - Column { - id: finder - readonly property string staged: - Wallpapers.target === "V" ? Wallpapers.pendingV : Wallpapers.pendingH - property string copied: "" + // wallhaven-dl searches wallhaven.cc and finds larger + // copies of low-res wallpapers. Launched through its + // desktop entry, which needs no ~/bin on quickshell's PATH + // and keeps the app's own taskbar icon. The panel closes + // so the app window is not opened under the overlay. + Tab { anchors.horizontalCenter: parent.horizontalCenter - visible: staged !== "" && Wallpapers.qualityNote(staged, Wallpapers.target) !== "" - spacing: 4 - - Tab { - anchors.horizontalCenter: parent.horizontalCenter - text: "Find a larger version" - onClicked: { - Quickshell.execDetached(["sh", "-c", - 'magick "$1" png:- | wl-copy -t image/png && xdg-open https://tineye.com/', - "sh", finder.staged]); - finder.copied = finder.staged; - } - } - Text { - anchors.horizontalCenter: parent.horizontalCenter - visible: finder.copied === finder.staged - text: "image copied: paste it on TinEye with Ctrl+V" - font { family: Theme.fontFamily; pixelSize: Theme.fontSize - 4 } - color: Theme.subtext + text: "Open wallhaven-dl" + onClicked: { + Quickshell.execDetached(["gtk-launch", "wallhaven-dl"]); + root.close(); } } diff --git a/appearance/README.md b/appearance/README.md index ef25428..7f69b97 100644 --- a/appearance/README.md +++ b/appearance/README.md @@ -97,14 +97,10 @@ how far it enlarges: not at all is green, up to 1.33x yellow, past that red. Under the mock screens a note in the same colour says why, for the hovered image or else the staged one. The staged image keeps the accent border. -When the staged image is yellow or red, "Find a larger version" copies it to -the clipboard and opens TinEye, where Ctrl+V searches for it and the matches -can be sorted by size. A search engine takes no local file in a URL, and -scripted uploads hit bot and consent walls (TinEye answered 403, Google Lens -redirected to its consent page and dropped the image), so the paste in the -browser is the upload. The copy is converted to PNG first: Firefox gives a -page only `image/png` from the clipboard, and a JPEG copied as itself -pasted nothing. Replacing the file with a larger find is done by hand. +"Open wallhaven-dl" under the mock screens launches the wallhaven-dl app, +which searches wallhaven.cc and finds larger copies of low-res wallpapers, +and closes the panel. It goes through `gtk-launch` and the app's desktop +entry, so `~/bin` need not be on quickshell's PATH. `wallp` does the actual work, including running `udt-accent`, so the accent follows the new wallpaper exactly as it does from a terminal. This panel |
