Mountain/Binary/Tray/mod.rs
1#![allow(non_snake_case)]
2
3//! # Binary::Tray
4//!
5//! System tray integration for the Mountain application.
6//! Manages tray icon lifecycle: initial creation (`EnableTray`),
7//! theme-aware icon switching (`SwitchTrayIcon`), menu construction
8//! (Open / Hide / Quit items), and window-visibility toggling on
9//! left-click. Degrades gracefully if the desktop environment has no
10//! tray support.
11//!
12//! ## Planned Work
13//!
14//! - Tray notification badge support
15//! - Tray icon animation for background activity indication
16//! - Context-menu state (enabled/disabled, checked/unchecked) per item
17//! - Optimal icon sizes for HiDPI settings across platforms
18//! - Platform-specific tray behavior investigation (macOS, Windows, Linux)
19
20/// Create and register the initial system tray icon and menu.
21pub mod EnableTray;
22
23/// `#[tauri::command]` that switches the tray icon between light and dark
24/// variants.
25pub mod SwitchTrayIcon;