Skip to content

Watch: snooze page to snooze all alarms ahead - #801

Open
kristinkand wants to merge 2 commits into
loopandlearn:devfrom
kristinkand:feature/watch-snooze-page
Open

kristinkand wants to merge 2 commits into
loopandlearn:devfrom
kristinkand:feature/watch-snooze-page

Conversation

@kristinkand

@kristinkand kristinkand commented Oct 30, 2026 •

Copy link
Copy Markdown

Adds a third page to the watch app for the phone's "Snooze all", so alarms can be snoozed before they fire as on the phone.

  • Shows whether alarms are snoozed and the time left
  • Tap for: End Snooze, + 30 minutes, 30 min / 1 h / 2 h / 4 h, or "Until a time…" (Digital Crown or − / +, in quarter hours, up to 24 h ahead)

How it works

  • New WatchCommand.Action.snoozeAll(until:): the phone sets alarmConfiguration.snoozeUntil and snoozes a sounding alarm, like the Snoozer's "Snooze all". Needs the phone, not remote commands (same as .snoozeAlarm).
  • WatchState.snoozeAllUntil (optional); the phone republishes the state when the alarm configuration changes, so a snooze set on the phone shows on the watch.

Credit
Layout and behaviour follow Magnus Reintz's @t1dude alarm snooze page for Trio's watch app, including counting the time left from now (nightscout/Trio#1381).

Testing

  • Snooze 30 min on the watch → phone Snoozer shows the same end
  • End Snooze on the watch → alarms active on both
  • Snooze set on the phone appears on the watch
  • "Until a time…" across midnight
  • Phone out of reach → page says snoozing needs the iPhone

🤖 Generated with Claude Code

https://claude.ai/code/session_01UUzqfqfsM8BQYJ2yoRaLz8
incoming-47BE5625-6D0F-484E-8EA6-8C11B6FAE1AF
incoming-1EAF9DAE-B8A3-4C44-8167-EB533EB1763F
incoming-2973AAD3-6FDE-45C3-A161-229CEAA78795
incoming-C40BC112-66FB-4623-AC04-845F106787DE

A third watch page shows whether all alarms are snoozed and for how long. A tap opens
End Snooze, + 30 minutes, snoozes of 30 minutes to 4 hours, and "Until a time…", which
picks an end time with the Digital Crown (the next time the clock shows it, at most 24
hours ahead).

The phone applies the choice like the Snoozer's "Snooze all": it sets the alarm
configuration's snoozeUntil and snoozes an alarm that is sounding. It needs the phone but
not remote commands, like snoozing a sounding alarm. The watch state carries the snooze
end, and a change on the phone is sent to the watch at once.

The page follows Magnus Reintz's (t1dude) alarm snooze page for Trio's watch app: the bell
in a circle with the time left, the snooze end below it, the options in a sheet, and the
time left counted from now rather than the timeline's tick (nightscout/Trio#1381).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UUzqfqfsM8BQYJ2yoRaLz8
The time picker took taps on its columns, not the crown. "Until a time…" now uses the same
crown field as the bolus amount: the end time in quarter hours, turned with the crown or
− and +, from 15 minutes up to 24 hours ahead, with "Today/Tomorrow 07:00 · in 8 h 30"
under it. The field has the crown's focus when the screen opens.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UUzqfqfsM8BQYJ2yoRaLz8
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant