| 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.