diff options
Diffstat (limited to 'movement/movement.c')
-rw-r--r-- | movement/movement.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/movement/movement.c b/movement/movement.c index 2ac31a96..b41700b0 100644 --- a/movement/movement.c +++ b/movement/movement.c @@ -265,10 +265,17 @@ bool app_loop() { // if we have timed out of our timeout countdown, give the app a hint that they can resign. if (movement_state.timeout_ticks == 0) { movement_state.timeout_ticks = -1; - event.event_type = EVENT_TIMEOUT; + if (movement_state.settings.bit.to_always == false) { + // if "timeout always" is false, give the current watch face a chance to exit gracefully... + event.event_type = EVENT_TIMEOUT; + } event.subsecond = movement_state.subsecond; watch_faces[movement_state.current_watch_face].loop(event, &movement_state.settings, watch_face_contexts[movement_state.current_watch_face]); event.event_type = EVENT_NONE; + if (movement_state.settings.bit.to_always && movement_state.current_watch_face != 0) { + // ...but if the user has "timeout always" set, give it the boot. + movement_move_to_face(0); + } } // Now that we've handled all display update tasks, handle the alarm. |