Skip to main content

Module notify_menu

Module notify_menu 

Source
Expand description

The tray as a notification hub — SPEC_OS_NOTIFICATIONS_SYSTEM_2026_09_24.md §4.2.

Platform-neutral half: the state the srv Router publishes (notification:state), the menu model built from it, pause resolution, and the tooltip line. Backends render it; notify::tray_request carries the user’s picks back to srv.

Kept separate from TrayAction / menu_model on purpose: those are Copy and shared with the macOS backend, which this phase does not touch (Phase 3 brings the same hub to the menu bar).

Structs§

AttentionItem
NotifyTrayState
Mirrors srv’s NotifyTrayState (backend/notify/policy.rs).

Enums§

NotifyMenuAction
NotifyMenuEntry
PauseChoice

Statics§

STATE 🔒
WAKE 🔒

Functions§

format_local_hm 🔒
get
menu
The notification section of the tray menu (placed above New Window/Quit).
menu_label
muda treats & as a mnemonic marker on Windows; agent names are user-chosen, so escape it rather than let “R&D” render as “RD”.
resolve_pause
Absolute epoch-ms deadline for a pause choice, resolved at click time.
set
Called by the notify presenter when srv publishes a new snapshot.
set_wake
A backend registers how to wake its UI thread when the state changes.
tooltip_suffix
Extra tooltip line, if any.
wake
Ask the tray to redraw its menu (also used for the start-at-login item).

Type Aliases§

Wake 🔒