fix(bedtime): DST-safe windows, ordered edits, quieter passes
Whether the wake time is the same night or the next morning is now decided on the local times, so a bedtime in a spring-forward gap no longer turns a 45-minute window into a day-long one. Screen edits start undispatched so they reach the engine's lock in the order they were made, and an edit that rewrites the rule also re-asserts the mode, in case the platform reset its state. The launch-time bedtime pass runs even if an earlier engine pass failed, a restore that never applied settings no longer forces the mode, and a user who never turned bedtime on pays nothing for it at launch or boot. The screen says when equal bedtime and wake-up times mean it never starts. Refs #1
This commit is contained in:
1 parent
2dce78281a
commit
1a443c066f
11 files changed
+87
-38
No files matched your search
+1
-1
@@ -164,7 +164,7 @@ generic advice: exact-alarm permission, notification permission, full-screen-int
|
||||
permission, battery-optimisation exemption, **whether DND currently blocks alarms**
|
||||
(read via `NotificationManager.getCurrentInterruptionFilter()`; the self-check never
|
||||
changes DND itself, it only reports what the user already has. The one place Clockula
|
||||
touches DND is the opt-in bedtime mode added after v1, which needs the user to grant
|
||||
touches DND is the opt-in bedtime mode (issue #1), which needs the user to grant
|
||||
`ACCESS_NOTIFICATION_POLICY` by hand and always lets alarms through; see
|
||||
`ARCHITECTURE.md` §18), whether the OEM has Clockula under an aggressive app-killer, and
|
||||
the next scheduled fire time as the system sees it (`getNextAlarmClock()`), compared
|
||||
|
||||
Reference in new issue
Block a user