diff --git a/modules/bar/popouts/ActiveWindow.qml b/modules/bar/popouts/ActiveWindow.qml index 574d29d..a8afc95 100644 --- a/modules/bar/popouts/ActiveWindow.qml +++ b/modules/bar/popouts/ActiveWindow.qml @@ -127,7 +127,7 @@ Item { Layout.alignment: Qt.AlignVCenter implicitSize: 36 - source: Icons.getAppIcon(toplevel?.lastIpcObject.class ?? "") + source: Icons.getAppIcon(toplevel?.lastIpcObject.class ?? "", "") } ColumnLayout { diff --git a/modules/dashboard/Mixer.qml b/modules/dashboard/Mixer.qml index 397298b..a83ae58 100644 --- a/modules/dashboard/Mixer.qml +++ b/modules/dashboard/Mixer.qml @@ -110,8 +110,8 @@ Item { source: { const icon = entry.modelData.properties["application.icon-name"]; if (icon) - return Icons.getAppIcon(icon); - Icons.getAppIcon(entry.modelData?.name ?? "") + return Icons.getAppIcon(icon, "icon-missing"); + Icons.getAppIcon(entry.modelData.name, "icon-missing") } } diff --git a/modules/dashboard/Workspaces.qml b/modules/dashboard/Workspaces.qml index 9aa8c63..6f5db42 100644 --- a/modules/dashboard/Workspaces.qml +++ b/modules/dashboard/Workspaces.qml @@ -377,7 +377,7 @@ Item { anchors.centerIn: parent implicitSize: Math.min(48, window.width * 0.5, window.height * 0.5) - source: Icons.getAppIcon(window.ipc?.class ?? "") + source: Icons.getAppIcon(window.ipc?.class ?? "", "") } // Interactions diff --git a/util/Icons.qml b/util/Icons.qml index 9f4d6fe..8975f1c 100644 --- a/util/Icons.qml +++ b/util/Icons.qml @@ -76,15 +76,7 @@ Singleton { readonly property var desktopEntrySubs: ({ "gimp-3.0": ["gimp"], - "discord": ["discord", "discord-canary"], - // Libreoffice - "libreoffice-startcenter": ["libreoffice-startcenter", "startcenter"], - "libreoffice-writer": ["libreoffice-writer", "writer"], - "libreoffice-draw": ["libreoffice-draw", "draw"], - "libreoffice-impress": ["libreoffice-impress", "impress"], - "libreoffice-math": ["libreoffice-math", "math"], - "libreoffice-base": ["libreoffice-base", "base"], - "libreoffice-calc": ["libreoffice-calc", "calc"] + "discord": ["discord", "discord-canary"] }) readonly property var categoryIcons: ({ @@ -139,8 +131,8 @@ Singleton { return DesktopEntries.applications.values.find(a => names.includes(a.id.toLowerCase())) ?? null; } - function getAppIcon(name: string): string { - return Quickshell.iconPath(getDesktopEntry(name)?.icon, "icon-missing"); + function getAppIcon(name: string, fallback: string): string { + return Quickshell.iconPath(getDesktopEntry(name)?.icon, fallback); } function getAppCategoryIcon(name: string, fallback: string): string {