Struct notify_rust::NotificationHandle [] [src]

pub struct NotificationHandle {
    // some fields omitted
}

A handle to a shown notification.

This keeps a connection alive to ensure actions work on certain desktops.

Methods

impl NotificationHandle
[src]

Manually close the notification

Replace the original notification with an updated version

Example

use notify_rust::Notification;

let mut notification = Notification::new()
    .summary("Foo")
    .body("foo demo")
    .show().unwrap();

std::thread::sleep_ms(1_500);

notification
    .summary("Bar")
    .body("bar demo");

notification.update();

Watch out for different implementations of the notification server! On plasma5 or instance, you should also change the appname, so the old message is really replaced and not just amended. Xfce behaves well, all others have not been tested by the developer.

Methods from Deref<Target=Notification>

Overwrite the appname field used for Notification.

Set the summary.

Often acts as title of the notification. For more elaborate content use the body field.

Set the content of the body field.

Multiline textual content of the notification. Each line should be treated as a paragraph. Simple html markup should be supported, depending on the server implementation.

Set the icon field.

You can use common icon names here, usually those in /usr/share/icons can all be used. You can also use an absolute path to file.

Adds a hint.

This method will add a hint to the internal hint hashset. Hints must be of type NotificationHint.

use notify_rust::Notification;
use notify_rust::NotificationHint;
Notification::new()
    .summary("Category:email")
    .body("This should not go away until you acknoledge it.")
    .icon("thunderbird")
    .appname("thunderbird")
    .hint(NotificationHint::Category("email".to_owned()))
    .hint(NotificationHint::Resident(true))
    .show();

Set the timeout.

This sets the time (in miliseconds) from the time the notification is displayed until it is closed again by the Notification Server. According to specification -1 will leave the timeout to be set by the server and 0 will cause the notification never to expire.

Set the urgency.

Pick between Medium, Low and High.

Set actions.

To quote http://www.galago-project.org/specs/notification/0.9/x408.html#command-notify

Actions are sent over as a list of pairs. Each even element in the list (starting at index 0) represents the identifier for the action. Each odd element in the list is the localized string that will be displayed to the user.

There is nothing fancy going on here yet. Carefull! This replaces the internal list of actions!

Add an action.

This adds a single action to the internal list of actions.

Finalizes a Notification.

Part of the builder pattern, returns a complete copy of the built notification.

Sends Notification to D-Bus.

Returns a handle to a notification

Wraps show() but prints notification to stdout.

Trait Implementations

impl Deref for NotificationHandle
[src]

Required for DerefMut

The resulting type after dereferencing

The method called to dereference a value

impl DerefMut for NotificationHandle
[src]

Allow to easily modify notification properties

The method called to mutably dereference a value