Fix silent launch failure for apps whose desktop id ends in .desktop (Telegram) (#6418)

* Launch apps by their full desktop file name

gtk-launch only appends the .desktop suffix when the argument doesn't
already end with it. Apps whose desktop id itself ends in .desktop --
notably Telegram (org.telegram.desktop.desktop) -- were therefore looked
up as a nonexistent file and silently failed to launch from the menu,
while every other app worked.

Passing the full file name to gtk-launch resolves the entry
unambiguously for both naming styles.

* Clarify launch comment wording
This commit is contained in:
Grigoriy Sidorov
2026-07-29 18:56:09 -04:00
committed by GitHub
parent bf4aac95ad
commit fa6b5fce0d
2 changed files with 9 additions and 1 deletions
+4 -1
View File
@@ -78,7 +78,10 @@ Item {
var id = String(desktopId || "")
if (!id) return
root.beginLaunchFeedback(name)
Util.execDetached("gtk-launch " + Util.shellQuote(id))
// Pass the file name with its extension: gtk-launch only appends ".desktop"
// when the argument doesn't already end with it, so ids that themselves end
// in ".desktop" (e.g. org.telegram.desktop) would otherwise never resolve.
Util.execDetached("gtk-launch " + Util.shellQuote(id + ".desktop"))
}
function remove(desktopId, name) {