diff --git a/quickshell/Services/NotificationService.qml b/quickshell/Services/NotificationService.qml index 82084098..6af94fe2 100644 --- a/quickshell/Services/NotificationService.qml +++ b/quickshell/Services/NotificationService.qml @@ -771,6 +771,11 @@ Singleton { interval: { if (!wrapper.notification) return 5000; + // Honor an app-specified expire timeout (seconds); -1 means the + // app deferred to the server, so fall back to our per-urgency settings. + const appTimeout = wrapper.notification.expireTimeout; + if (appTimeout >= 0) + return Math.round(appTimeout * 1000); switch (wrapper.urgency) { case NotificationUrgency.Low: return SettingsData.notificationTimeoutLow;