From c36ca265a545251e75589f3353dc7e5d2e768ef7 Mon Sep 17 00:00:00 2001 From: end-4 <97237370+end-4@users.noreply.github.com> Date: Fri, 30 May 2025 00:37:21 +0200 Subject: [PATCH] guess icons also by desktop entry search --- .config/quickshell/services/AppSearch.qml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.config/quickshell/services/AppSearch.qml b/.config/quickshell/services/AppSearch.qml index 182da675..f76e2574 100644 --- a/.config/quickshell/services/AppSearch.qml +++ b/.config/quickshell/services/AppSearch.qml @@ -63,7 +63,8 @@ Singleton { } function iconExists(iconName) { - return Quickshell.iconPath(iconName, true).length > 0; + return (Quickshell.iconPath(iconName, true).length > 0) + && !iconName.includes("image-missing"); } function guessIcon(str) { @@ -93,6 +94,13 @@ Singleton { // Guess: normalize to kebab case guessStr = str.toLowerCase().replace(/\s+/g, "-"); if (iconExists(guessStr)) return guessStr; + // Guess: First fuzze desktop entry match + const searchResults = root.fuzzyQuery(str); + if (searchResults.length > 0) { + const firstEntry = searchResults[0]; + guessStr = firstEntry.icon + if (iconExists(guessStr)) return guessStr; + } // Give up return str;