Crate notify_rust [−] [src]
Desktop Notifications for Rust.
Desktop notifications are popup messages generated to notify the user of certain events.
Examples
Example 1: Simple Notification
Notification::new() .summary("Firefox News") .body("This will almost look like a real firefox notification.") .icon("firefox") .timeout(6000) //milliseconds .show().unwrap();
Example 2: Persistent Notification
Notification::new() .summary("Category:email") .body("This has nothing to do with emails.\nIt should not go away until you acknoledge it.") .icon("thunderbird") .appname("thunderbird") .hint(Hint::Category("email".to_owned())) .hint(Hint::Resident(true)) // this is not supported by all implementations .timeout(0) // this however is .show().unwrap();
Careful! There are no checks whether you use hints twice.
It is possible to set urgency=Low
AND urgency=Critical
, in which case the behavior of the server is undefined.
Example 3: Ask the user to do something
Notification::new() .summary("click me") .action("default", "default") .action("clicked", "click here") .hint(Hint::Resident(true)) .show() .unwrap() .wait_for_action({|action| match action { "default" => {println!("you clicked \"default\"")}, "clicked" => {println!("that was correct")}, // here "__closed" is a hardcoded keyword "__closed" => {println!("the notification was closed")}, _ => () } });
Minimal Example
You can ommit almost everything
Notification::new() .show();
more examples in the repository.
Reexports
pub use hints::NotificationHint; |
Modules
hints |
|
server |
Experimental server taking the place of your Desktop Environments Notification Server. |
Structs
Error |
D-Bus Error wrapper |
Notification |
Desktop notification. |
NotificationHandle |
A handle to a shown notification. |
ServerInformation |
Return value of |
Enums
NotificationUrgency |
Levels of Urgency. |
Functions
get_capabilities |
Get list of all capabilities of the running notification server. |
get_server_information |
Returns a struct containing |
handle_actions |
Listens for the |
stop_server |
Strictly internal. The Notificationserver implemented here exposes a "Stop" function. stops the notification server |