store settings in function call, remove last uses of settings in callbacks

This commit is contained in:
joeycastillo 2024-09-29 09:57:41 -04:00
parent b3ed4df0a1
commit 3bd8f8d51f
6 changed files with 9 additions and 4 deletions

View File

@ -399,6 +399,10 @@ void movement_set_backlight_dwell(uint8_t value) {
movement_state.settings.bit.led_duration = value;
}
void movement_store_settings(void) {
watch_store_backup_data(movement_state.settings.reg, 0);
}
bool movement_alarm_enabled(void) {
return movement_state.settings.bit.alarm_enabled;
}

View File

@ -356,6 +356,8 @@ void movement_set_backlight_color(movement_color_t color);
uint8_t movement_get_backlight_dwell(void);
void movement_set_backlight_dwell(uint8_t value);
void movement_store_settings(void);
/// TODO: For #SecondMovement: Should we have a counter that watch faces increment when they enable an alarm, and decrement when they disable it?
/// Or should there be a watch face function where watch faces can tell us if they have an alarm enabled?
/// Worth considering a better way to handle this.

View File

@ -48,7 +48,6 @@ static void save(save_load_state_t *state) {
static void load(save_load_state_t *state, movement_settings_t *settings) {
watch_store_backup_data(state->slot[state->index].b0, 0);
settings->reg = state->slot[state->index].b0;
watch_store_backup_data(state->slot[state->index].b1, 1);
watch_store_backup_data(state->slot[state->index].b2, 2);
watch_store_backup_data(state->slot[state->index].b3, 3);

View File

@ -267,5 +267,5 @@ void set_time_hackwatch_face_resign(movement_settings_t *settings, void *context
(void) settings;
(void) context;
watch_set_led_off();
watch_store_backup_data(settings->reg, 0);
movement_store_settings();
}

View File

@ -247,5 +247,5 @@ void preferences_face_resign(movement_settings_t *settings, void *context) {
(void) settings;
(void) context;
movement_force_led_off();
watch_store_backup_data(settings->reg, 0);
movement_store_settings();
}

View File

@ -182,5 +182,5 @@ void set_time_face_resign(movement_settings_t *settings, void *context) {
(void) settings;
(void) context;
watch_set_led_off();
watch_store_backup_data(settings->reg, 0);
movement_store_settings();
}