Expand description
Tray-popover visibility state machine (M-TRAY.0 / AUT-249).
Pure-Rust state machine — no Tauri types, no async, no I/O — so the
transition logic is verifiable on every OS (including Windows
where Tauri 2’s mock_builder won’t link at test-time per
CLAUDE.md “Tauri 2 specifics”).
M-TRAY.3 will rename this to MainWindowVisibility when the
tray-popover window is reshaped into the full app main window.
The transition contract — toggle → show-or-hide — carries over
unchanged.
Enums§
- Action
- The action the click handler should perform after observing a tray click.
- Tray
Popover State - Whether the tray-popover window is currently shown to the user.