Client

Struct Client 

Source
pub struct Client { /* private fields */ }
Expand description

Client for watching the tray.

Implementations§

Source§

impl Client

Source

pub async fn new() -> Result<Self>

Creates and initializes the client.

The client will begin listening to items and menus and sending events immediately. It is recommended that consumers immediately follow the call to new with a subscribe call, then immediately follow that with a call to items to get the state to not miss any events.

The value of service_name must be unique on the session bus. It is recommended to use something similar to the format of appid-numid, where numid is a short-ish random integer.

§Errors

If the initialization fails for any reason, for example if unable to connect to the bus, this method will return an error.

§Panics

If the generated well-known name is invalid, the library will panic as this indicates a major bug.

Likewise, the spawned tasks may panic if they cannot get a Mutex lock.

Source

pub fn subscribe(&self) -> Receiver<Event>

Subscribes to the events broadcast channel, returning a new receiver.

Once the client is dropped, the receiver will close.

Source

pub fn items(&self) -> Arc<Mutex<BaseMap>>

Gets all current items, including their menus if present.

Source

pub async fn about_to_show_menuitem( &self, address: String, menu_path: String, id: i32, ) -> Result<bool>

One should call this method with id=0 when opening the root menu.

ID refers to the menuitem id. Returns needsUpdate

§Errors

Errors if the proxy cannot be created.

Source

pub async fn activate(&self, req: ActivateRequest) -> Result<()>

Sends an activate request for a menu item.

§Errors

The method will return an error if the connection to the DBus object fails, or if sending the event fails for any reason.

§Panics

If the system time is somehow before the Unix epoch.

Trait Implementations§

Source§

impl Debug for Client

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Client

§

impl !RefUnwindSafe for Client

§

impl Send for Client

§

impl Sync for Client

§

impl Unpin for Client

§

impl !UnwindSafe for Client

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more