Whether action icons are supported.
Available actions for this notification.
Desktop entry of the sending application.
Icon name or path from the sending application.
Name of the sending application.
The notification body text.
Notification category hint.
Raw hints dictionary from the notification.
Unique notification ID.
Path to the notification image (cached from image-data or image-path).
Check if service has been disposed
Whether this notification is currently shown as a popup.
Whether the notification persists after action invocation.
Path to a custom sound file.
Named sound from the sound theme.
The notification summary (title).
Whether to suppress notification sounds.
Unix timestamp of when the notification was received.
Popup timeout duration in milliseconds.
Whether this is a transient notification.
Urgency level: "low", "normal", or "critical".
Optional x-coordinate hint for positioning.
Optional y-coordinate hint for positioning.
Creates a Binding for a property on this service.
The property to bind
A Binding that can be used in widget constructors
Notifies listeners that a property changed and emits the 'changed' signal.
The property name that changed
ReadonlycloseCloses and removes the notification entirely.
Connects a callback to a signal on this service.
The signal name (defaults to 'changed')
The callback to invoke when the signal is emitted
The signal connection ID
Creates an incremental list binding that reuses existing widgets.
Instead of recreating all widgets on every update, this method caches widgets by a key function and only creates new widgets for new items, destroying widgets for removed items.
A Binding that produces an array of widgets
ProtecteddisconnectClean up all tracked signal connections Call this in service-specific dispose implementations
ReadonlydismissDismisses the popup without closing the notification.
Dispose of service resources Override in subclasses to add specific cleanup
Emits a signal, warning if the signal was not registered via Service.register.
The warning is cheap (a Set lookup per emit) and helps catch typos
and missing signal declarations that silently break .bind().
ReadonlyinvokeInvokes a notification action by ID. Closes the notification if not resident.
The action identifier to invoke
ProtectedretrySerializes the notification to a JSON-compatible object for caching.
Whether to include actions in the serialized output
The serialized notification data
ProtectedtrackTrack a signal connection for automatic cleanup
The object the signal is connected to (defaults to this)
The signal connection ID
Track a signal connection for automatic cleanup
The signal connection ID
Updates a property value and emits a notify signal if the value changed.
Performs a deep equality check via JSON serialization to avoid unnecessary notifications.
The property name in kebab-case
The new value
StaticfromReconstructs a Notification from cached JSON data.
The serialized notification data
A new Notification instance
StaticimportStaticpspecStaticregister
Notification
Represents a single desktop notification with its metadata, actions, and lifecycle.
Lifecycle:
Fires
dismissed - Emitted when popup is dismissed
Fires
closed - Emitted when notification is closed
Fires
invoked - Emitted when action is invoked