diff --git a/quantum/process_keycode/process_unicode_common.c b/quantum/process_keycode/process_unicode_common.c index 20055f1722..097dfb7e30 100644 --- a/quantum/process_keycode/process_unicode_common.c +++ b/quantum/process_keycode/process_unicode_common.c @@ -29,7 +29,7 @@ uint8_t mods; void set_unicode_input_mode(uint8_t os_target) { input_mode = os_target; - eeprom_update_byte(EECONFIG_UNICODEMODE, os_target); + persist_unicode_input_mode(); dprintf("input_mode set to: %u\n", input_mode); } @@ -68,12 +68,16 @@ void cycle_unicode_input_mode(void) { selected_index = (selected_index + 1) % selected_count; input_mode = selected[selected_index]; # if UNICODE_CYCLE_PERSIST - eeprom_update_byte(EECONFIG_UNICODEMODE, input_mode); + persist_unicode_input_mode(); # endif dprintf("input_mode cycle to: %u\n", input_mode); #endif } +void persist_unicode_input_mode(void) { + eeprom_update_byte(EECONFIG_UNICODEMODE, input_mode); +} + __attribute__((weak)) void unicode_input_start (void) { // save current mods diff --git a/quantum/process_keycode/process_unicode_common.h b/quantum/process_keycode/process_unicode_common.h index 0d4830958b..8d46600c3a 100644 --- a/quantum/process_keycode/process_unicode_common.h +++ b/quantum/process_keycode/process_unicode_common.h @@ -41,6 +41,7 @@ void set_unicode_input_mode(uint8_t os_target); uint8_t get_unicode_input_mode(void); void unicode_input_mode_init(void); void cycle_unicode_input_mode(void); +void persist_unicode_input_mode(void); void unicode_input_start(void); void unicode_input_finish(void);