diff --git a/quantum/process_keycode/process_unicode_common.c b/quantum/process_keycode/process_unicode_common.c index a9fbd11b0f..af37f12fc6 100644 --- a/quantum/process_keycode/process_unicode_common.c +++ b/quantum/process_keycode/process_unicode_common.c @@ -65,6 +65,9 @@ void cycle_unicode_input_mode(void) { unicode_input_mode_init(); // Init selected_index selected_index = (selected_index + 1) % selected_count; input_mode = selected[selected_index]; +# if UNICODE_CYCLE_PERSIST + eeprom_update_byte(EECONFIG_UNICODEMODE, input_mode); +# endif #endif } diff --git a/quantum/process_keycode/process_unicode_common.h b/quantum/process_keycode/process_unicode_common.h index 390d6b5e81..0d4830958b 100644 --- a/quantum/process_keycode/process_unicode_common.h +++ b/quantum/process_keycode/process_unicode_common.h @@ -25,6 +25,11 @@ #define UNICODE_SELECTED_MODES -1 #endif +// Whether input mode changes in cycle should be written to EEPROM +#ifndef UNICODE_CYCLE_PERSIST +#define UNICODE_CYCLE_PERSIST true +#endif + #ifndef UNICODE_TYPE_DELAY #define UNICODE_TYPE_DELAY 10 #endif