Top | ![]() |
![]() |
![]() |
![]() |
void | xdp_portal_add_notification () |
gboolean | xdp_portal_add_notification_finish () |
void | xdp_portal_remove_notification () |
These functions let applications send desktop notifications.
The underlying portal is org.freedesktop.portal.Notification.
void xdp_portal_add_notification (XdpPortal *portal
,const char *id
,GVariant *notification
,XdpNotificationFlags flags
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer data
);
Sends a desktop notification.
The following keys may be present in notification
:
title s
: a user-visible string to display as title
body s
: a user-visible string to display as body
icon v
: a serialized icon (in the format produced by g_icon_serialize()
)
priority s
: "low", "normal", "high" or "urgent"
default-action s
: name of an action that
will be activated when the user clicks on the notification
default-action-target v
: target parameter to send along when
activating the default action.
buttons aa{sv}
: array of serialized buttons
Each serialized button is a dictionary with the following supported keys:
label s
: user-visible lable for the button. Mandatory
action s
: name of an action that will be activated when
the user clicks on the button. Mandatory
target v
: target parameter to send along when activating
the button
Actions with a prefix of "app." are assumed to be exported by the application and will be activated via the org.freedesktop.Application interface, others are activated by emitting the “notification-action-invoked” signal.
It is the callers responsibility to ensure that the ID is unique among all notifications.
To withdraw a notification, use xdp_portal_remove_notification()
.
portal |
||
id |
unique ID for the notification |
|
notification |
a GVariant dictionary with the content of the notification |
|
flags |
options for this call |
|
cancellable |
optional GCancellable. |
[nullable] |
callback |
a callback to call when the request is done. |
[scope async] |
data |
data to pass to |
[closure] |
gboolean xdp_portal_add_notification_finish (XdpPortal *portal
,GAsyncResult *result
,GError **error
);
Finishes the notification request, and returns the result as a boolean.