summaryrefslogtreecommitdiff
path: root/quantum/process_keycode
AgeCommit message (Collapse)AuthorFilesLines
2025-11-30[CI] Format code according to conventions (#25828)QMK Bot1-3/+3
Format code according to conventions
2025-11-30Merge remote-tracking branch 'origin/master' into developQMK Bot6-29/+46
2025-11-30[CI] Format code according to conventions (#25827)QMK Bot6-29/+46
Format code according to conventions
2025-11-23Reduce tap dance memory usage, move state out of data (#25415)Stephen Ostermiller2-40/+93
* Use less tap dance memory. Use dynamically allocated sparse array for tap dance state, dynamically allocate tap dance state when needed and free it when the tap dance is done. * new approach * Use null, check for null * Reformat with docker * Use uint8 with idx rather than uint16 with keycode in state * fix accidental change * reformat * Add null check * add documentation tip suggested by tzarc * Only allow tap dance state allocation on key down, not on key up Co-authored-by: Sergey Vlasov <sigprof@gmail.com> * Only allow tap dance allocation on key down, not on key up Co-authored-by: Sergey Vlasov <sigprof@gmail.com> * add user action required section --------- Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2025-11-23Fix single key combos activating only once (#25198)Julian Schuler1-0/+4
Co-authored-by: Julian Schuler <julianschuler@users.noreply.github.com>
2025-11-11[Feature Improvement]add option to keep layer state when recording dynamic ↵Chaser Huang1-1/+22
macros (#24418) * feat: add option to keep layer state when recording dynamic macros * Better option macro name and lint changes
2025-09-22Add generic handling to cycle LED/RGB Matrix flags (#24649)Joel Challis2-0/+20
2025-06-03Relocate remaining `process_record_quantum` keycodes (#25328)Joel Challis5-0/+126
2025-04-21Implement connection keycode logic (#25176)Joel Challis1-7/+17
2025-04-19Ignore the Layer Lock key in Repeat Key and Caps Word. (#25171)Pascal Getreuer2-2/+10
2025-04-14[Core] Flow Tap tap-hold option to disable HRMs during fast typing (#25125)Pascal Getreuer1-5/+1
aka Global Quick Tap, Require Prior Idle
2025-03-21Non-volatile memory data repository pattern (#24356)Nick Brassel4-13/+10
* 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.
2025-01-08[Bug] Fix Underglow keycode processing (#24798)Drashna Jaelre1-1/+4
Co-authored-by: Ryan <fauxpark@gmail.com>
2024-11-23[Feature] Add keycode PDF(layer) to set the default layer in EEPROM (#24630)Joel Challis3-0/+60
* [Feature] Add keycode PDF(layer) to set the default layer in EEPROM (#21881) * Apply suggestions from code review Co-authored-by: Nick Brassel <nick@tzarc.org> --------- Co-authored-by: Nebuleon <2391500+Nebuleon@users.noreply.github.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2024-11-21Review fixes for layer lock feature (#24627)Joel Challis2-63/+2
2024-11-21[Core] Add Layer Lock feature (#23430)Drashna Jaelre2-0/+164
Co-authored-by: Daniel <1767914+iamdanielv@users.noreply.github.com> Co-authored-by: Pascal Getreuer <getreuer@google.com> Co-authored-by: Pascal Getreuer <50221757+getreuer@users.noreply.github.com>
2024-11-20Backward compatibility for new RGB keycode handling (#24490)Ryan1-3/+116
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2024-10-18[Core] `usb_device_state`: consolidate usb state handling across ↵Stefan Kerkmann1-1/+1
implementations (#24258) * usb_device_state: add idle_rate, led and protocol Previously all usb drivers and platform implementations (expect for our oddball atsam) tracked the same two global variables: - keyboard_protocol: to indicate if we are in report or boot protocol - keyboard_idle: for the idle_rate of the keyboard endpoint And a local variable that was exposed trough some indirection: - keyboard_led_state: for the currently set indicator leds (caps lock etc.) These have all been moved into the usb_device_state struct wich is accessible by getters and setters. This reduces code duplication and centralizes the state management across platforms and drivers. Signed-off-by: Stefan Kerkmann <karlk90@pm.me> * usb_device_state: reset protocol on reset The usb hid specification section 7.2.6 states: When initialized, all devices default to report protocol. However the host should not make any assumptions about the device’s state and should set the desired protocol whenever initializing a device. Thus on reset we should always do exactly that. Signed-off-by: Stefan Kerkmann <karlk90@pm.me> * keyboards: fix oversize warnings Signed-off-by: Stefan Kerkmann <karlk90@pm.me> --------- Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
2024-10-12Separate RGBLight/RGB Matrix keycode handling (#23679)Ryan2-248/+0
* Separate RGBLight/RGB Matrix keycode handling * Remove `_DISABLE_KEYCODES` handling * Update RGB Matrix keycode docs * Update underglow keycodes for previously migrated boards * Update keycodes for boards with custom handling * Fix typos * Fix bad merge
2024-10-12Update combo user function variable (#24467)フィルターペーパー1-3/+3
2024-09-05Add combo key repress feature (#22858)Filios921-12/+34
Co-authored-by: jack <jack@pngu.org>
2024-08-27Add new connection keycodes for Bluetooth, 2.4GHz. (#24251)Nick Brassel2-0/+45
2024-08-18Add dynamic macro keyboard callbacks (#24142)Drashna Jaelre2-22/+44
2024-07-16Add support for key override introspection. (#24120)Nick Brassel2-10/+5
2024-07-06Tap dance introspection (#24049)Nick Brassel2-6/+10
2024-06-13Add process_keycode handlers for new RGB Matrix and Underglow keycodes (#23896)Ryan4-0/+212
2024-05-07Normalise RGBLight (underglow) keycodes (#23656)Ryan1-11/+11
2024-04-13LED Matrix: replace backlight keycodes with newly added ones (#23455)Ryan1-7/+22
2024-04-11Separate keycode handling for LED Matrix and Backlight (#23426)Ryan3-28/+44
2024-02-01Remove redundant steno eeconfig init (#22680)Joel Challis1-3/+0
2024-01-09Ignore space cadet key release when caps word is active (#21721)Paul Landers3-1/+10
2024-01-09MIDI sustain effect fix on qmk 0.22.2 (#22114)3araht1-13/+10
2024-01-09Merge remote-tracking branch 'origin/master' into developQMK Bot1-2/+1
2024-01-09Fix user hook call for dynamic_macro_record_key (#22250)Kai1-2/+1
2023-12-24Align location of tap dance keycode (#22742)Joel Challis2-5/+5
2023-11-12Remove requirement for `keymap_steno.h` include in keymaps (#22423)Ryan2-1/+1
* Remove requirement for `keymap_steno.h` include in keymaps * Add back keymap_steno.h with a note for the time being
2023-11-11fix: make clicky delay silent (#21866)Less/Rikki1-1/+1
2023-09-25Improve test invocation, fix Retro Shift bugs, and add Auto+Retro Shift test ↵Isaac Elenbaas2-12/+18
cases (#15889)
2023-09-25Fix combo_ref_from_layer respect different default layer [#21780] (#21781)Ben Cooper1-1/+1
2023-08-27Unicode, Unicodemap and UCIS refactor (#21659)Ryan8-185/+37
2023-08-01Fix Dynamic Macro Compilation for avr-gcc 5.4.0 + Linux (#21653)James Young1-1/+1
Co-authored-by: Joel Challis <git@zvecr.com>
2023-07-26Reduce needless precision in audio note frequency calculation (#21496)Nebuleon1-1/+1
2023-07-26On-each-release tap dance function (#20255)leep-frog2-5/+17
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2023-07-21haptic: naming cleanups (#21551)Ryan1-0/+3
2023-07-16quantum: remove direct `quantum.h` includes (#21507)Ryan4-7/+8
2023-07-12process_combo: restore wait.h header (#21514)フィルターペーパー1-0/+1
Required for `wait_ms()` function
2023-07-11process_keycode: remove direct `quantum.h` includes (#21486)Ryan44-156/+253
2023-07-08[Feature] Send a dummy keycode to neutralize flashing modifiers in retro tap ↵precondition1-0/+9
and key overrides (#20992)
2023-07-08[Enhancement] More info on `apply_autocorrect` (#21056)Pablo Martínez2-4/+54
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-07-07Adds a way to separate tab from AUTO_SHIFT_SPECIAL. (#20996)Chris Salch2-3/+15