From e1565bdd59cb721de25de4d72cb507440aa8da7f Mon Sep 17 00:00:00 2001 From: Damocles Date: Fri, 17 Apr 2026 00:25:38 +0200 Subject: [PATCH] =?UTF-8?q?notifs:=20use=20Quickshell.iconPath()=20for=20a?= =?UTF-8?q?pp=20icon=20lookup=20=E2=80=94=20fixes=20broken=20icons=20when?= =?UTF-8?q?=20appIcon=20is=20a=20name=20not=20a=20path?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/NotifCenter.qml | 11 ++++++++++- modules/NotifPopup.qml | 10 +++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/modules/NotifCenter.qml b/modules/NotifCenter.qml index 0d8e669..f89a2e7 100644 --- a/modules/NotifCenter.qml +++ b/modules/NotifCenter.qml @@ -1,4 +1,5 @@ import QtQuick +import Quickshell import Quickshell.Services.Notifications import "." as M @@ -237,7 +238,15 @@ M.HoverPanel { anchors.topMargin: 6 width: 24 height: 24 - source: notifItem.modelData.image || notifItem.modelData.appIcon || "" + source: { + const img = notifItem.modelData.image; + if (img) + return img; + const ic = notifItem.modelData.appIcon; + if (!ic) + return ""; + return ic.startsWith("/") ? ic : Quickshell.iconPath(ic, "dialog-information"); + } visible: status === Image.Ready fillMode: Image.PreserveAspectFit sourceSize: Qt.size(24, 24) diff --git a/modules/NotifPopup.qml b/modules/NotifPopup.qml index 8c71b48..e6d33bf 100644 --- a/modules/NotifPopup.qml +++ b/modules/NotifPopup.qml @@ -161,7 +161,15 @@ PanelWindow { anchors.topMargin: 8 width: 36 height: 36 - source: popupItem.modelData.image || popupItem.modelData.appIcon || "" + source: { + const img = popupItem.modelData.image; + if (img) + return img; + const ic = popupItem.modelData.appIcon; + if (!ic) + return ""; + return ic.startsWith("/") ? ic : Quickshell.iconPath(ic, "dialog-information"); + } visible: status === Image.Ready fillMode: Image.PreserveAspectFit sourceSize: Qt.size(36, 36)