TrayIcon

Struct TrayIcon 

Source
pub struct TrayIcon<R: Runtime = Wry> { /* private fields */ }
Available on desktop and crate feature tray-icon and crate feature wry only.
Expand description

Tray icon struct and associated methods.

This type is reference-counted and the icon is removed when the last instance is dropped.

See TrayIconBuilder to construct this type.

Implementations§

Source§

impl<R: Runtime> TrayIcon<R>

Source

pub fn app_handle(&self) -> &AppHandle<R>

The application handle associated with this type.

Source

pub fn on_menu_event<F: Fn(&AppHandle<R>, MenuEvent) + Sync + Send + 'static>( &self, f: F, )

Register a handler for menu events.

Note that this handler is called for any menu event, whether it is coming from this window, another window or from the tray icon menu.

Source

pub fn on_tray_icon_event<F: Fn(&TrayIcon<R>, TrayIconEvent) + Sync + Send + 'static>( &self, f: F, )

Register a handler for this tray icon events.

Source

pub fn id(&self) -> &TrayIconId

Returns the id associated with this tray icon.

Source

pub fn set_icon(&self, icon: Option<Image<'_>>) -> Result<()>

Sets a new tray icon. If None is provided, it will remove the icon.

Source

pub fn set_menu<M: ContextMenu + 'static>(&self, menu: Option<M>) -> Result<()>

Sets a new tray menu.

§Platform-specific:
  • Linux: once a menu is set it cannot be removed so None has no effect
Source

pub fn set_tooltip<S: AsRef<str>>(&self, tooltip: Option<S>) -> Result<()>

Sets the tooltip for this tray icon.

§Platform-specific:
  • Linux: Unsupported
Source

pub fn set_title<S: AsRef<str>>(&self, title: Option<S>) -> Result<()>

Sets the title for this tray icon.

§Platform-specific:
  • Linux: The title will not be shown unless there is an icon as well. The title is useful for numerical and other frequently updated information. In general, it shouldn’t be shown unless a user requests it as it can take up a significant amount of space on the user’s panel. This may not be shown in all visualizations.
  • Windows: Unsupported
Source

pub fn set_visible(&self, visible: bool) -> Result<()>

Show or hide this tray icon.

Source

pub fn set_temp_dir_path<P: AsRef<Path>>(&self, path: Option<P>) -> Result<()>

Sets the tray icon temp dir path. Linux only.

On Linux, we need to write the icon to the disk and usually it will be $XDG_RUNTIME_DIR/tray-icon or $TEMP/tray-icon.

Source

pub fn set_icon_as_template(&self, is_template: bool) -> Result<()>

Sets the current icon as a template. macOS only.

Source

pub fn set_show_menu_on_left_click(&self, enable: bool) -> Result<()>

Disable or enable showing the tray menu on left click.

§Platform-specific:
  • Linux: Unsupported.
Source

pub fn rect(&self) -> Result<Option<Rect>>

Get tray icon rect.

§Platform-specific:
  • Linux: Unsupported, always returns None.
Source

pub fn with_inner_tray_icon<F, T>(&self, f: F) -> Result<T>
where F: FnOnce(&TrayIcon) -> T + Send + 'static, T: Send + 'static,

Do something with the inner tray_icon::TrayIcon on main thread

Note that tray-icon crate may be updated in minor releases of Tauri. Therefore, it’s recommended to pin Tauri to at least a minor version when you’re using with_inner_tray_icon.

Trait Implementations§

Source§

impl<R: Runtime> Clone for TrayIcon<R>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<R: Runtime> Resource for TrayIcon<R>

Source§

fn close(self: Arc<Self>)

Resources may implement the close() trait method if they need to do resource specific clean-ups, such as cancelling pending futures, after a resource has been removed from the resource table.
Source§

fn name(&self) -> Cow<'_, str>

Returns a string representation of the resource. The default implementation returns the Rust type name, but specific resource types may override this trait method.
Source§

impl<R: Runtime> Send for TrayIcon<R>

Source§

impl<R: Runtime> Sync for TrayIcon<R>

§Safety

We make sure it always runs on the main thread.

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.