Skip to content

Commit

Permalink
Keep light on if interacting
Browse files Browse the repository at this point in the history
This makes it possible to do a bunch of things without
having to keep touching the light button.

I don't really see any downside with this. If you want
the light to go off, just stop touching buttons.
  • Loading branch information
wryun committed Jul 20, 2024
1 parent 5ec3dca commit 5f1a651
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 0 deletions.
11 changes: 11 additions & 0 deletions movement/movement.c
Original file line number Diff line number Diff line change
Expand Up @@ -543,6 +543,17 @@ bool app_loop(void) {
event.subsecond = movement_state.subsecond;
// the first trip through the loop overrides the can_sleep state
can_sleep = wf->loop(event, &movement_state.settings, watch_face_contexts[movement_state.current_face_idx]);

// Keep light on if user is still interacting with the watch.
if (movement_state.light_ticks > 0) {
switch (event.event_type) {
case EVENT_LIGHT_BUTTON_DOWN:
case EVENT_MODE_BUTTON_DOWN:
case EVENT_ALARM_BUTTON_DOWN:
movement_illuminate_led();
}
}

event.event_type = EVENT_NONE;
}

Expand Down
1 change: 1 addition & 0 deletions watch-library/simulator/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,7 @@ void main_loop_sleep(uint32_t ms) {
main_loop_set_sleeping(true);
emscripten_sleep(ms);
main_loop_set_sleeping(false);
animation_frame_id = ANIMATION_FRAME_ID_INVALID;
}

bool main_loop_is_sleeping(void) {
Expand Down

0 comments on commit 5f1a651

Please sign in to comment.