Expand description
app:startatlogin: one setting, three views
(docs/specs/SPEC_START_WITH_OS_2026_09_25.md §3.9).
The setting is the single source of truth, owned by srv like every other
setting. The Settings toggle writes it with setconfig; the tray’s check
item writes it the same way, over the launcher’s srv connection
(notify::request_start_at_login, the path the tray’s “pause
notifications” already uses). srv broadcasts every change to all clients,
so the Settings page, the tray check mark and the OS login entry all follow
the one value: this module receives it (observe), refreshes the tray, and
reconciles the login entry to it (autostart::plan).
Off unless the user turns it on (owner decision, 2026-09-25).
Constants§
- SETTINGS_
KEY - Settings key.
Statics§
- RECONCILE 🔒
- Serializes reconciles, so two quick toggles cannot interleave their writes.
- SEEN 🔒
- The last value srv reported.
Noneuntil the first config frame arrives: the tray shows the item disabled until then, rather than guess.
Functions§
- current
- The setting as the tray should show it:
None= not known yet. - observe
- srv reported the setting (on connect, and after every settings change).
Nonemeans the key is not set. - reconcile_
latest 🔒 - toggle
- The tray’s check item was clicked.