diff --git a/Modules/Bar/Calendar/CalendarPanel.qml b/Modules/Bar/Calendar/CalendarPanel.qml index ba0bbf8e..dddfd8be 100644 --- a/Modules/Bar/Calendar/CalendarPanel.qml +++ b/Modules/Bar/Calendar/CalendarPanel.qml @@ -611,8 +611,10 @@ NPanel { onClicked: { const dateWithSlashes = `${(modelData.month + 1).toString().padStart(2, '0')}/${modelData.day.toString().padStart(2, '0')}/${modelData.year.toString().substring(2)}` - Quickshell.execDetached(["gnome-calendar", "--date", dateWithSlashes]) - root.close() + if (ProgramCheckerService.gnomeCalendarAvailable) { + Quickshell.execDetached(["gnome-calendar", "--date", dateWithSlashes]) + root.close() + } } onExited: { diff --git a/Services/ProgramCheckerService.qml b/Services/ProgramCheckerService.qml index 93189f09..b18ef1ea 100644 --- a/Services/ProgramCheckerService.qml +++ b/Services/ProgramCheckerService.qml @@ -24,6 +24,7 @@ Singleton { property bool wlsunsetAvailable: false property bool app2unitAvailable: false property bool codeAvailable: false + property bool gnomeCalendarAvailable: false // Discord client auto-detection property var availableDiscordClients: [] @@ -109,7 +110,8 @@ Singleton { "app2unitAvailable": ["which", "app2unit"], "gpuScreenRecorderAvailable": ["sh", "-c", "command -v gpu-screen-recorder >/dev/null 2>&1 || (command -v flatpak >/dev/null 2>&1 && flatpak list --app | grep -q 'com.dec05eba.gpu_screen_recorder')"], "wlsunsetAvailable": ["which", "wlsunset"], - "codeAvailable": ["which", "code"] + "codeAvailable": ["which", "code"], + "gnomeCalendarAvailable": ["which", "gnome-calendar"] }) // Internal tracking