diff options
| author | Nick Brassel <nick@tzarc.org> | 2025-03-21 23:38:34 +1100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-03-21 23:38:34 +1100 |
| commit | 2b00b846dce1d1267dfdb2a3c2972a367cc0dd44 (patch) | |
| tree | 6d801a8d83c58ee646b789bfa9ab912857ee7d8c /quantum/process_keycode | |
| parent | c9d62ddc78e879053241202b288d0129073b07dc (diff) | |
Non-volatile memory data repository pattern (#24356)
* First batch of eeconfig conversions.
* Offset and length for datablocks.
* `via`, `dynamic_keymap`.
* Fix filename.
* Commentary.
* wilba leds
* satisfaction75
* satisfaction75
* more keyboard whack-a-mole
* satisfaction75
* omnikeyish
* more whack-a-mole
* `generic_features.mk` to automatically pick up nvm repositories
* thievery
* deferred variable resolve
* whitespace
* convert api to structs/unions
* convert api to structs/unions
* convert api to structs/unions
* fixups
* code-side docs
* code size fix
* rollback
* nvm_xxxxx_erase
* Updated location of eeconfig magic numbers so non-EEPROM nvm drivers can use them too.
* Fixup build.
* Fixup compilation error with encoders.
* Build fixes.
* Add `via_ci` keymap to onekey to exercise VIA bindings (and thus dynamic keymap et.al.), fixup compilation errors based on preprocessor+sizeof.
* Build failure rectification.
Diffstat (limited to 'quantum/process_keycode')
| -rw-r--r-- | quantum/process_keycode/process_autocorrect.c | 6 | ||||
| -rw-r--r-- | quantum/process_keycode/process_clicky.c | 6 | ||||
| -rw-r--r-- | quantum/process_keycode/process_magic.c | 4 | ||||
| -rw-r--r-- | quantum/process_keycode/process_steno.c | 7 |
4 files changed, 10 insertions, 13 deletions
diff --git a/quantum/process_keycode/process_autocorrect.c b/quantum/process_keycode/process_autocorrect.c index b7f9132acf..0cde520778 100644 --- a/quantum/process_keycode/process_autocorrect.c +++ b/quantum/process_keycode/process_autocorrect.c | |||
| @@ -38,7 +38,7 @@ bool autocorrect_is_enabled(void) { | |||
| 38 | */ | 38 | */ |
| 39 | void autocorrect_enable(void) { | 39 | void autocorrect_enable(void) { |
| 40 | keymap_config.autocorrect_enable = true; | 40 | keymap_config.autocorrect_enable = true; |
| 41 | eeconfig_update_keymap(keymap_config.raw); | 41 | eeconfig_update_keymap(&keymap_config); |
| 42 | } | 42 | } |
| 43 | 43 | ||
| 44 | /** | 44 | /** |
| @@ -48,7 +48,7 @@ void autocorrect_enable(void) { | |||
| 48 | void autocorrect_disable(void) { | 48 | void autocorrect_disable(void) { |
| 49 | keymap_config.autocorrect_enable = false; | 49 | keymap_config.autocorrect_enable = false; |
| 50 | typo_buffer_size = 0; | 50 | typo_buffer_size = 0; |
| 51 | eeconfig_update_keymap(keymap_config.raw); | 51 | eeconfig_update_keymap(&keymap_config); |
| 52 | } | 52 | } |
| 53 | 53 | ||
| 54 | /** | 54 | /** |
| @@ -58,7 +58,7 @@ void autocorrect_disable(void) { | |||
| 58 | void autocorrect_toggle(void) { | 58 | void autocorrect_toggle(void) { |
| 59 | keymap_config.autocorrect_enable = !keymap_config.autocorrect_enable; | 59 | keymap_config.autocorrect_enable = !keymap_config.autocorrect_enable; |
| 60 | typo_buffer_size = 0; | 60 | typo_buffer_size = 0; |
| 61 | eeconfig_update_keymap(keymap_config.raw); | 61 | eeconfig_update_keymap(&keymap_config); |
| 62 | } | 62 | } |
| 63 | 63 | ||
| 64 | /** | 64 | /** |
diff --git a/quantum/process_keycode/process_clicky.c b/quantum/process_keycode/process_clicky.c index 82000db9b3..f50761268a 100644 --- a/quantum/process_keycode/process_clicky.c +++ b/quantum/process_keycode/process_clicky.c | |||
| @@ -66,17 +66,17 @@ void clicky_freq_reset(void) { | |||
| 66 | 66 | ||
| 67 | void clicky_toggle(void) { | 67 | void clicky_toggle(void) { |
| 68 | audio_config.clicky_enable ^= 1; | 68 | audio_config.clicky_enable ^= 1; |
| 69 | eeconfig_update_audio(audio_config.raw); | 69 | eeconfig_update_audio(&audio_config); |
| 70 | } | 70 | } |
| 71 | 71 | ||
| 72 | void clicky_on(void) { | 72 | void clicky_on(void) { |
| 73 | audio_config.clicky_enable = 1; | 73 | audio_config.clicky_enable = 1; |
| 74 | eeconfig_update_audio(audio_config.raw); | 74 | eeconfig_update_audio(&audio_config); |
| 75 | } | 75 | } |
| 76 | 76 | ||
| 77 | void clicky_off(void) { | 77 | void clicky_off(void) { |
| 78 | audio_config.clicky_enable = 0; | 78 | audio_config.clicky_enable = 0; |
| 79 | eeconfig_update_audio(audio_config.raw); | 79 | eeconfig_update_audio(&audio_config); |
| 80 | } | 80 | } |
| 81 | 81 | ||
| 82 | bool is_clicky_on(void) { | 82 | bool is_clicky_on(void) { |
diff --git a/quantum/process_keycode/process_magic.c b/quantum/process_keycode/process_magic.c index 3b35884d68..d5280105de 100644 --- a/quantum/process_keycode/process_magic.c +++ b/quantum/process_keycode/process_magic.c | |||
| @@ -47,7 +47,7 @@ bool process_magic(uint16_t keycode, keyrecord_t *record) { | |||
| 47 | if (record->event.pressed) { | 47 | if (record->event.pressed) { |
| 48 | if (IS_MAGIC_KEYCODE(keycode)) { | 48 | if (IS_MAGIC_KEYCODE(keycode)) { |
| 49 | /* keymap config */ | 49 | /* keymap config */ |
| 50 | keymap_config.raw = eeconfig_read_keymap(); | 50 | eeconfig_read_keymap(&keymap_config); |
| 51 | switch (keycode) { | 51 | switch (keycode) { |
| 52 | case QK_MAGIC_SWAP_CONTROL_CAPS_LOCK: | 52 | case QK_MAGIC_SWAP_CONTROL_CAPS_LOCK: |
| 53 | keymap_config.swap_control_capslock = true; | 53 | keymap_config.swap_control_capslock = true; |
| @@ -187,7 +187,7 @@ bool process_magic(uint16_t keycode, keyrecord_t *record) { | |||
| 187 | break; | 187 | break; |
| 188 | } | 188 | } |
| 189 | 189 | ||
| 190 | eeconfig_update_keymap(keymap_config.raw); | 190 | eeconfig_update_keymap(&keymap_config); |
| 191 | clear_keyboard(); // clear to prevent stuck keys | 191 | clear_keyboard(); // clear to prevent stuck keys |
| 192 | 192 | ||
| 193 | return false; | 193 | return false; |
diff --git a/quantum/process_keycode/process_steno.c b/quantum/process_keycode/process_steno.c index c491d6f1d8..4789461352 100644 --- a/quantum/process_keycode/process_steno.c +++ b/quantum/process_keycode/process_steno.c | |||
| @@ -20,9 +20,6 @@ | |||
| 20 | #ifdef VIRTSER_ENABLE | 20 | #ifdef VIRTSER_ENABLE |
| 21 | # include "virtser.h" | 21 | # include "virtser.h" |
| 22 | #endif | 22 | #endif |
| 23 | #ifdef STENO_ENABLE_ALL | ||
| 24 | # include "eeprom.h" | ||
| 25 | #endif | ||
| 26 | 23 | ||
| 27 | // All steno keys that have been pressed to form this chord, | 24 | // All steno keys that have been pressed to form this chord, |
| 28 | // stored in MAX_STROKE_SIZE groups of 8-bit arrays. | 25 | // stored in MAX_STROKE_SIZE groups of 8-bit arrays. |
| @@ -128,13 +125,13 @@ static const uint16_t combinedmap_second[] PROGMEM = {STN_S2, STN_KL, STN_WL, ST | |||
| 128 | 125 | ||
| 129 | #ifdef STENO_ENABLE_ALL | 126 | #ifdef STENO_ENABLE_ALL |
| 130 | void steno_init(void) { | 127 | void steno_init(void) { |
| 131 | mode = eeprom_read_byte(EECONFIG_STENOMODE); | 128 | mode = eeconfig_read_steno_mode(); |
| 132 | } | 129 | } |
| 133 | 130 | ||
| 134 | void steno_set_mode(steno_mode_t new_mode) { | 131 | void steno_set_mode(steno_mode_t new_mode) { |
| 135 | steno_clear_chord(); | 132 | steno_clear_chord(); |
| 136 | mode = new_mode; | 133 | mode = new_mode; |
| 137 | eeprom_update_byte(EECONFIG_STENOMODE, mode); | 134 | eeconfig_update_steno_mode(mode); |
| 138 | } | 135 | } |
| 139 | #endif // STENO_ENABLE_ALL | 136 | #endif // STENO_ENABLE_ALL |
| 140 | 137 | ||
