Luigit
repositories / dotfiles

dotfiles

bugabingas dorkfiles

owned by admin

pi/agent/skills/optional/quickshell/examples/08-notification-daemon/README.md

Raw
Rendered preview

08: minimal notification daemon

This example tracks notifications and renders plain summary and body text. It explicitly disables action, persistence, inline-reply, markup, hyperlink, and image capability flags because the UI does not implement them.

For a positive expireTimeout, which the installed-version docs express in seconds, the example converts to milliseconds for QML Timer.interval and calls Notification.expire(). Zero leaves the notification visible; a negative timeout requests daemon policy, here five seconds. Each window owns its expiry timer, so removing the notification also removes its timer. Variants creates the windows; a Qt Quick Repeater cannot use non-Item window delegates. This example has no history, manual dismissal, overflow management, or multi-monitor policy and is not a production daemon.

Static check:

qmllint -I /usr/lib/qt6/qml examples/08-notification-daemon/shell.qml

Do not launch this against the user's real session during routine validation. NotificationServer attempts to own the session notification service. A runtime test requires an isolated session bus and notification clients. Static checking does not prove ownership, expiry, stacking, interaction, or appearance.

# 08: minimal notification daemon

This example tracks notifications and renders plain summary and body text.
It explicitly disables action, persistence, inline-reply, markup, hyperlink, and image capability flags because the UI does not implement them.

For a positive `expireTimeout`, which the installed-version docs express in seconds, the example converts to milliseconds for QML `Timer.interval` and calls `Notification.expire()`.
Zero leaves the notification visible; a negative timeout requests daemon policy, here five seconds.
Each window owns its expiry timer, so removing the notification also removes its timer.
`Variants` creates the windows; a Qt Quick `Repeater` cannot use non-Item window delegates.
This example has no history, manual dismissal, overflow management, or multi-monitor policy and is not a production daemon.

Static check:

```sh
qmllint -I /usr/lib/qt6/qml examples/08-notification-daemon/shell.qml
```

**Do not launch this against the user's real session during routine validation.**
`NotificationServer` attempts to own the session notification service.
A runtime test requires an isolated session bus and notification clients.
Static checking does not prove ownership, expiry, stacking, interaction, or appearance.