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