SNot/src/notifications.rs
2024-09-01 17:01:19 +05:30

60 lines
2.0 KiB
Rust

//! # D-Bus interface proxy for: `org.freedesktop.Notifications`
//!
//! This code was generated by `zbus-xmlgen` `4.1.0` from D-Bus introspection data.
//! Source: `notif.xml`.
//!
//! You may prefer to adapt it, instead of using it verbatim.
//!
//! More information can be found in the [Writing a client proxy] section of the zbus
//! documentation.
//!
//! This type implements the [D-Bus standard interfaces], (`org.freedesktop.DBus.*`) for which the
//! following zbus API can be used:
//!
//! * [`zbus::fdo::PropertiesProxy`]
//! * [`zbus::fdo::IntrospectableProxy`]
//! * [`zbus::fdo::PeerProxy`]
//!
//! Consequently `zbus-xmlgen` did not generate code for the above interfaces.
//!
//! [Writing a client proxy]: https://dbus2.github.io/zbus/client.html
//! [D-Bus standard interfaces]: https://dbus.freedesktop.org/doc/dbus-specification.html#standard-interfaces,
use zbus::proxy;
#[proxy(interface = "org.freedesktop.Notifications", assume_defaults = true)]
trait Notifications {
/// CloseNotification method
fn close_notification(&self, app_name: u32) -> zbus::Result<()>;
/// GetCapabilities method
fn get_capabilities(&self) -> zbus::Result<Vec<String>>;
/// GetServerInformation method
fn get_server_information(&self) -> zbus::Result<(String, String, String, String)>;
/// Notify method
#[allow(clippy::too_many_arguments)]
fn notify(
&self,
app_name: &str,
replace_id: u32,
icon: &str,
summary: &str,
body: &str,
actions: &[&str],
hints: std::collections::HashMap<&str, &zbus::zvariant::Value<'_>>,
expir_timeout: i32,
) -> zbus::Result<u32>;
/// ActionInvoked signal
#[zbus(signal)]
fn action_invoked(&self, app_name: u32, replace_id: &str) -> zbus::Result<()>;
/// ActivationToken signal
#[zbus(signal)]
fn activation_token(&self, app_name: u32, replace_id: &str) -> zbus::Result<()>;
/// NotificationClosed signal
#[zbus(signal)]
fn notification_closed(&self, app_name: u32, replace_id: u32) -> zbus::Result<()>;
}