Commit Graph

2332 Commits (34374d2e2e4f5b827c8a0402b0cc8f177431e25a)

Author SHA1 Message Date
Chris Salch e9ff66d8ad
Adds a way to separate tab from AUTO_SHIFT_SPECIAL. (#20996) 2023-07-07 21:52:24 +10:00
Ryan 87b11345a5
Get rid of `USB_LED_CAPS_LOCK` (#21436) 2023-07-06 09:48:02 +01:00
Xelus22 c4f66e5d6e
[Core] RGB Matrix limit basic indicators to the last render (#21169)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-07-02 15:56:48 -07:00
Ryan 9ab16e62f7
Get rid of `USB_LED_NUM_LOCK` (#21424) 2023-07-02 19:35:41 +01:00
Ryan 7ff80a57cb
Get rid of `USB_LED_SCROLL_LOCK` (#21405) 2023-07-02 19:24:22 +01:00
Ryan 5542f5ede1
Get rid of `USB_LED_KANA` and `USB_LED_COMPOSE` (#21366) 2023-06-27 09:15:33 +10:00
QMK Bot 7178645be7 Merge remote-tracking branch 'origin/master' into develop 2023-06-18 04:33:50 +00:00
Nick Brassel 884be6c1ba
Fix up operator precedence in RGBLIGHT (#21280) 2023-06-18 14:33:18 +10:00
Nick Brassel 6c7c5889ca
Rely on introspection to handle OOB access. (#21247) 2023-06-14 20:48:19 -07:00
Albert Y 3444e9656d
Refactor the rain lighting decision operator (#21139) 2023-06-10 23:55:03 -07:00
Xelus22 806b61c2f7
[Core] RGB matrix ws2812 update (#21135)
* ws2812_update boolean to stop update every single cycle

* lint1

Co-authored-by: Joel Challis <git@zvecr.com>

* lint2

Co-authored-by: Joel Challis <git@zvecr.com>

* Update quantum/rgb_matrix/rgb_matrix_drivers.c

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2023-06-09 01:00:22 +01:00
dexter93 90ea9e447a
Reset `matrix_need_update` properly in eager debouncing algorithms (#21154)
The `matrix_need_update` variable needs to be reset to `false` in
`transfer_matrix_values()`, otherwise that function continues to be
invoked for every scanning loop (forever with `sym_eager_pk` and
`sym_eager_pk`, or until some key gets released with
`asym_eager_defer_pk`), and the scanning rate gets much lower because of
all that useless work.

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2023-06-08 02:01:45 +01:00
QMK Bot 542749433c Merge remote-tracking branch 'origin/master' into develop 2023-06-07 23:00:02 +00:00
Pablo Martínez ae0342c12a
[Bugfix] LVGL bindings wrong offset math (#21147) 2023-06-08 08:59:13 +10:00
Albert Y fd1e638c28
Use unsigned integer for mousekey kinetic speed (#21151) 2023-06-07 13:12:49 -07:00
Joel Challis 0c0cabe3f5
Remove quantum/keymap.h (#21086) 2023-06-05 06:17:38 +01:00
Pablo Martínez edaf665414
[Enhancement] Decouple autocorrect logic (#21116) 2023-06-04 02:11:54 +01:00
Ariane Emory c754f644dc
[Core] Move dynamic macro "stop recording" logic to a function (#21108) 2023-06-02 14:46:04 -07:00
Ryan a4ed6ad0f5
Unicodemap keycodes rename (#21092) 2023-06-01 17:25:08 +01:00
Evgenii Vilkov 04719c774d
Fix backlight sync on suspend_power_down for split keyboards (#21079) 2023-05-31 11:46:03 -07:00
André Greiner-Petter 249fb3c2c2
[BUG] Allow multiple IS31FL3741 drivers per board in rgb_matrix (#20988) 2023-05-27 13:26:14 +10:00
Pascal Getreuer 3993b15f05
[Core] Add Repeat Key ("repeat last key") as a core feature. (#19700)
Co-authored-by: casuanoob <96005765+casuanoob@users.noreply.github.com>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2023-05-20 22:35:06 +10:00
Sergey Vlasov 21b660fa07
Move `pre_process_record_kb()` before `process_combo()` (#20969) 2023-05-20 22:15:55 +10:00
Nick Brassel 5faa23d54c
Keymap introspection for combos. (#19670) 2023-05-15 22:27:37 +10:00
Albert Y 128f808496
Add a user callback for pre process record (#20584) 2023-05-13 08:42:06 +01:00
Drashna Jaelre aec882528a
[Bug] Fix compilation error introduced by #20669 (#20849) 2023-05-11 00:06:12 +01:00
Pete Sevander 8a332e6f01
Fix Mod-Tap combo regression (#20669)
* Add keyevent for combo keyrecord

* Fix formatting

* Update quantum/process_keycode/process_combo.c

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

* Add combo unit-tests and hot-fix process_record_tap_hint

...as this function tries to lookup the combo keys passed in. This will
be refactored in a later pr.

---------

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2023-05-10 17:59:52 +02:00
Drashna Jaelre 5c4b53a143
[Bug] Realign and size check EECONFIG structures (#20541)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-05-08 10:56:03 -07:00
QMK Bot 50e99864dd Merge remote-tracking branch 'origin/master' into develop 2023-05-06 14:53:53 +00:00
Nick Brassel 88780bf710
Fixup QP font rendering when `--no-ascii` is specified. (#20637) 2023-05-06 15:53:14 +01:00
Drashna Jaelre 59eb8940b0
Make Pointing Device Auto Layer more configurable (#20061)
Co-authored-by: Pablo Martínez <58857054+elpekenin@users.noreply.github.com>
2023-05-06 06:38:45 -07:00
Pablo Martínez 82a34aee30
[Feature] Disable debug on QP's internal task (#20623)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-05-01 19:38:18 -07:00
Xelus22 6a619e6403
[Core] Clean up ISSI drivers, Add IS31FL3736 support (#20572)
Co-authored-by: Pablo Martínez <58857054+elpekenin@users.noreply.github.com>
2023-04-30 12:35:27 +10:00
QMK Bot 9c9670b25f Merge remote-tracking branch 'origin/master' into develop 2023-04-30 01:57:38 +00:00
Jasmin 4887f03dbd
typing_heatmap: Add macro to configure increase steps (#20300)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-04-30 11:57:30 +10:00
Christopher Berner 7138fa4582
Fix MATRIX_HAS_GHOST when MATRIX_COL > 16 (#20093) 2023-04-30 11:56:58 +10:00
precondition c3ae5c1076
Fix capital letters not getting sent with sendstring_swiss_fr.h (Issue #20080) (#20515) 2023-04-20 16:07:04 +01:00
Nick Brassel c9f619124d
Encodermap direction define. (#20454) 2023-04-15 16:18:44 +01:00
Manuel Ullmann 1502193181
quantum/action_util.c: Use uint8_t for oneshot_layer_data (#20423) 2023-04-12 07:24:07 -07:00
Giuseppe Rota e77699a58a
Fix preprocessor condition for SPLIT_HAPTIC_ENABLE (#20411) 2023-04-12 07:22:07 -07:00
Ricardo Hermida Ruiz d3b8179f46
Prevent Tri-Layer keys from stopping caps words (#20398) 2023-04-10 13:45:25 +01:00
Albert Y f5b7491883
Add swap hands toggle functions (#20381) 2023-04-09 09:37:31 -07:00
Stefan Kerkmann 73b376a881
[Chore] Remove stray mod tap interrupt defines and per key functions (#20347)
* Remove stray defines and per key functions

* Remove defunct get_ignore_mod_tap_interrupt declaration
2023-04-06 00:04:23 +01:00
Drashna Jaelre 7115927559
[Bug] Fix compilation issue with Swap Hands and Encoder Map (#20348) 2023-04-05 23:36:08 +01:00
Nick Brassel b1b8cd1bf0
Add basic profiler. (#20238) 2023-04-06 08:10:40 +10:00
Pascal Getreuer ae63c0f509
[Core] Caps Word "Invert on shift" option: pressing Shift inverts the shift state. (#20092)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-04-04 09:11:26 +10:00
ngs-ch ccda5d2d2f
Make "detected_host_os()" available on the SLAVE side of the split keyboard (#19854)
Co-authored-by: ngs.ch <ngs.ch>
Co-authored-by: Drashna Jaelre <drashna@drashna.net>
2023-04-04 08:48:51 +10:00
CobraSock d82c6648f5
Fixed split keyboard issue where custom LED indicators could activate incorrect LEDs (#20203) (#20204)
Co-authored-by: N M <ninja.milkman@gmail.com>
Fixed split keyboard issue where custom LED indicators could activate incorrect LEDs (#20203)
2023-04-04 08:46:00 +10:00
jack 36ab0c0aaa
Add core/fallback encoder behaviour (#20320) 2023-04-03 10:18:17 -06:00
Stefan Kerkmann fcf8b804ed
[Core] Refactor `keyevent_t` for 1ms timing resolution (#15847) 2023-04-03 18:33:45 +10:00
Kasimir Pihlasviita 46844347c4
Fix OSMs getting stuck (#20034) 2023-04-03 15:38:44 +10:00
precondition 1899793f27
Make IGNORE_MOD_TAP_INTERRUPT the default behaviour for mod-taps (#20211) 2023-04-03 15:32:47 +10:00
Johannes H. Jensen 68efea70b2
Add direction to dynamic_macro_record_start_user (#19689) 2023-04-03 13:01:07 +10:00
Vladislav Marchenko 9a68472da8
Added PMW3320 driver (#19543) 2023-04-03 12:57:19 +10:00
QMK Bot fe58538b8f Merge remote-tracking branch 'origin/master' into develop 2023-04-03 02:43:23 +00:00
Pablo Martínez 15a106b1ef
[Bugfix] Check QGF's bpp against display's native_bits_per_pixel (#19995) 2023-04-03 12:42:46 +10:00
Joel Challis 5b0bd553b3
Delete config_common.h (#20312) 2023-04-01 23:34:13 +01:00
Drashna Jaelre 297779385f
Add last activity functions for pointing device (#20079) 2023-03-30 18:27:39 -07:00
Ryan 647c2835e6
WS2812 driver improvements (#20262) 2023-03-30 12:21:02 +11:00
Joel Challis c485d1cf26
Remove use of keymap.h (#20004) 2023-03-27 20:08:17 +01:00
Eli Lipsitz 7e54defa20
Fix rgblight layers when animations aren't enabled (#20097) 2023-03-26 00:12:30 +00:00
Pablo Martínez cd542a0f67
[Cleanup] Quantum Painter (#19825)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-03-25 18:56:04 +01:00
Joel Challis b01dc36fbf
Tidy up duplication of MIN/MAX fallback implementations (#20236) 2023-03-23 05:30:30 +00:00
Joel Challis 6540b31d71
Add some helpers to tidy up XAP (#20235) 2023-03-23 00:37:13 +00:00
Ryan 9c3c159286
Update Doxygen comments for some headers (#20194) 2023-03-22 14:32:49 +11:00
Nick Brassel a518e1e5d8
Sync activity timestamps between sides. (#20192)
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2023-03-21 10:16:11 +01:00
Nick Brassel cd94ba031c
Quantum Painter QoL enhancements -- auto-poweroff, auto-flush, buffer sizing (#20013) 2023-03-20 14:13:53 +11:00
Joel Challis a974c51d25
Relocate various modifier defines (#18638) 2023-03-10 18:27:29 -08:00
QMK Bot 43648760c4 Merge remote-tracking branch 'origin/master' into develop 2023-03-08 06:38:46 +00:00
Joel Challis 952b88528f
Fix processing of recently added system keycodes (#20058) 2023-03-08 06:38:11 +00:00
Joel Challis 3be5d90b6d
Remove some use of keymap.h (#20006) 2023-03-03 17:50:40 +00:00
Joel Challis c3c40dfda8
Remove some use of keymap.h (#19980) 2023-03-03 11:26:53 +00:00
Joel Challis 9f2cd9119f
Reallocate user/kb keycode ranges (#19907) 2023-02-23 09:50:09 +11:00
Joel Challis 961f0b7b2d
Reallocate SAFE_RANGE (#19909) 2023-02-23 09:49:07 +11:00
Nick Brassel 7f805cc779
VIA Protocol 12 + fixes (#19916)
Co-authored-by: Wilba <wilba@wilba.tech>
Co-authored-by: zvecr <git@zvecr.com>
2023-02-23 09:19:00 +11:00
Joel Challis 403b0addea
Align magic keycodes (#19877) 2023-02-23 08:14:29 +11:00
precondition 93f2ed3abf
[Bug] Fix compilation error when defining QUICK_TAP_TERM_PER_KEY (#19893) 2023-02-22 11:03:36 -08:00
Joel Challis 0152dd811d
Move `KC_MISSION_CONTROL`/`KC_LAUNCHPAD` keycodes to core (#19884) 2023-02-19 18:59:50 +11:00
Drashna Jaelre 48a79b08cc
Fix functions when `NO_ACTION_TAPPING` is defined (#11528) 2023-02-19 12:08:03 +11:00
Joel Challis f587a0c548
Align sequencer keycodes (#19875) 2023-02-18 15:44:36 +00:00
Drashna Jaelre a63808c23f
[Bug] Fix compiliation issue for Key Overrides (#19856) 2023-02-15 21:06:10 +00:00
Pascal Getreuer 7d692d64f3
Fix Layer Mod handling of with right-handed mods. (#19845) 2023-02-14 12:44:42 -08:00
Albert Y 9908ed7ecd
Add swap hands status function (#19831)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-02-14 12:44:18 -08:00
Dasky 74770ac79b Merge branch 'master' into develop 2023-02-14 03:05:44 +00:00
Albert Y cd91a3ced7
Update fractal attribution comment (#19832) 2023-02-13 10:58:27 -07:00
Nick Brassel b8ac4dddb6
Fixup `develop` compiles. (#19828) 2023-02-13 08:57:23 +11:00
Drashna Jaelre b47f179a4a
Make Magic handling more consistent in Action Keycode handling (#9126)
Co-authored-by: Ryan <fauxpark@gmail.com>
2023-02-13 04:48:14 +11:00
Joel Challis 6ceff1367d
Tidy up use of keycode range helpers (#19813) 2023-02-12 17:09:34 +00:00
dexter93 3ae87b1555
core: allow locking the matrix state (#18852)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-02-13 03:38:36 +11:00
Eric.a Gebhart db1eeea478
Add combo hook to allow per layer combo reference layers. (#16699)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2023-02-13 03:31:04 +11:00
Ryan bbf7a20b33
Refactor Leader key feature (#19632)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-02-13 03:19:02 +11:00
Joel Challis d10350cd2c
Restore packing of midi note keycodes (#19468) 2023-02-13 02:55:51 +11:00
Sergey Vlasov 584b7cf801
Fix build failures with `OPT = 0` due to inline functions (#19767)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-02-12 17:14:34 +11:00
Drashna Jaelre b1f4d49c43
[Bug] Fix tri layer compiler issue if NO_ACTION_LAYER is defined (#19821) 2023-02-12 17:07:01 +11:00
jack 9c6942ea40
Remove `config.h` include from quantum files (#19817) 2023-02-12 02:40:16 +00:00
Drashna Jaelre fe02abc479
[Core] Tri Layer Keys (#19795)
Co-authored-by: wilba <wilba@wilba.tech>
Co-authored-by: Pablo Martínez <58857054+elpekenin@users.noreply.github.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-02-12 10:23:07 +11:00
Joel Challis 11d49d00e7
Remove matrix_init_quantum/matrix_scan_quantum (#19806) 2023-02-11 03:47:17 +00:00
Joel Challis 1d0b4c8d38
Tidy up use of keycode range helpers (#19756) 2023-02-10 21:10:14 +00:00
Joel Challis 2ffdec5dc2
Move more unicode ranges to DD (#19755) 2023-02-10 21:08:54 +00:00
jpe230 49c912f9b4
QP: Correct rotation and offset when using LVGL (#19713)
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: Joel Challis <git@zvecr.com>
2023-02-02 14:31:54 +11:00
Joel Challis d84a7351ea
Strip out more of config_common (#19722) 2023-01-30 20:40:12 +00:00
Nick Brassel f6dd8dea2e
Remove usages of config_common.h from config.h files. (#19714) 2023-01-31 06:03:30 +11:00
Ryan 2d843088a2
Normalise Swap Hands keycodes (#19720) 2023-01-30 18:37:19 +00:00
Ryan 242b80c63f
Move MIDI code out of tmk_core (#19704) 2023-01-30 18:47:50 +11:00
Joel Challis 968cc1fe7b
Relocate diode direction definitions (#19715) 2023-01-30 15:10:40 +11:00
Ryan 043d8e1140
Remove deprecated Quantum keycodes (#19712) 2023-01-29 16:44:16 +00:00
Joel Challis 8cc2e0e906
Fix quantum ring_buffer for ChibiOS (#19683) 2023-01-28 21:07:51 +00:00
Nick Brassel ea05045923
Allow overriding of keymap/encodermap layer count. (#19325) 2023-01-24 07:10:03 +11:00
Ryan cf935d97ae
Fix functions with empty params (#19647)
* Fix functions with empty params

* Found a bunch more
2023-01-20 16:21:17 +00:00
Jouke Witteveen db7ca07909
Process Tap Dances before WPM/Velocikey (#19599) 2023-01-16 21:23:57 -08:00
Albert Y 0ff52925c0
Refactor pixel rain animation (#19606) 2023-01-16 17:54:51 -08:00
David Hoelscher 45851a10f6
Add RGB565 and RGB888 color support to Quantum Painter (#19382) 2023-01-14 21:24:54 +11:00
QMK Bot 8bc85c0f42 Merge remote-tracking branch 'origin/master' into develop 2023-01-10 03:22:17 +00:00
Drashna Jaelre 90fd08bf4b
[Bug] Use correct functions for RGB Matrix support in VIA (#19554) 2023-01-10 03:21:38 +00:00
David Kosorin 0f5500182c
Allow mod-tap hold action on one shot layer (#19214) 2023-01-02 11:16:24 +01:00
QMK Bot fc2c9ccbc5
Regenerate Files (#19463) 2023-01-01 02:20:11 +00:00
Drashna Jaelre b585ece5ef
Add Split support for Haptic feedback (#19203) 2023-01-01 11:56:32 +11:00
Drashna Jaelre ac561b9473
[Bug] Prevent dynamic keymaps from processing layers that don't exist (#19225) 2023-01-01 11:55:14 +11:00
Joel Challis d0ebafaea6
Align definition of unicode_map (#19452) 2023-01-01 11:54:12 +11:00
Albert Y 77092675aa
Update RGB matrix reactive gradient timer scale (#19415) 2022-12-30 11:38:15 +11:00
Albert Y 7f2ac4c576
De-obfuscate random8 functions in RGB matrix animations (#19416) 2022-12-27 12:11:31 -08:00
Albert Y 809c05ddf2
Use random8 for jellybean effect (#19418) 2022-12-27 12:10:07 -08:00
Joel Challis 517f8af99e
Revert changes to keymap_steno.h (#19412) 2022-12-23 23:42:33 +00:00
QMK Bot 8f506b5bc2 Merge remote-tracking branch 'origin/master' into develop 2022-12-23 11:12:33 +00:00
Joel Challis ab1898e660
Minor alignment of rgb_breathe_table generator (#19403) 2022-12-23 11:11:56 +00:00
Joel Challis e5721bbd37
Remaining DD keymap_extras migration (#19110)
* Parse headers to data

* Regen headers from data
2022-12-21 23:35:23 +00:00
Stefan Kerkmann 85984902cf
Introduce IS_EVENT instead of !IS_NOEVENT (#19366) 2022-12-17 14:06:27 +00:00
Stefan Kerkmann dedc54a328
[Core] guard action related debug messages (#19348) 2022-12-15 23:38:25 +01:00
QMK Bot 62b89f8184 Merge remote-tracking branch 'origin/master' into develop 2022-12-15 08:19:43 +00:00
Joshua Diamond 571a9794af
Fix non-functional RGBLIGHT_EFFECT_TWINKLE on ARM (#19335) 2022-12-15 00:18:54 -08:00
Ryan 1978007fae
Tap Dance: remove `qk_` prefix (#19313) 2022-12-14 12:40:25 -08:00
Stefan Kerkmann 962e4c0e18
[Test] Reset timer for every unit test and provide timestamps for log messages (#17028) 2022-12-15 02:31:08 +11:00
Joel Challis 1124bbc1db
Remove deprecated led_set_kb (#19273)
* Remove led_set_kb maintaining existing led_set_user behaviour

* Also call led_set_user
2022-12-14 11:14:10 +00:00
Ryan e2117564c5
Leader: remove `qk_` prefix (#19304) 2022-12-14 13:46:01 +11:00
Ryan 9e4cfcd181
UCIS: remove `qk_` prefix (#19302) 2022-12-14 13:44:36 +11:00
precondition 515dd18c28
Remove IGNORE_MOD_TAP_INTERRUPT_PER_KEY in favour of HOLD_ON_OTHER_KEY_PRESS_PER_KEY (#15741) 2022-12-13 22:20:07 +11:00
jpe230 102f22f7e9
[Core] Quantum Painter - LVGL Integration (#18499)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-12-13 07:51:14 +11:00
Albert Y cbabc8dbe6
[Core] Replace Tapping Force Hold feature with Quick Tap Term (#17007)
* Replace Tapping Force Hold feature with Quick Tap Term

* Replace keyboard level TAPPING_FORCE_HOLD with QUICK_TAP_TERM 0

* Deprecate force hold in info_config.json

* Before and after quick tap term unit tests

* Quick tap unit tests iteration

* Keymap config.h correction

* Remove TAPPING_FORCE_HOLD_PER_KEY macros that were missed

* Add two more test cases for quick tap

* Replace TAPPING_FORCE_HOLD with QUICK_TAP_TERM in configs #2

* Replace TAPPING_FORCE_HOLD_PER_KEY with QUICK_TAP_TERM_PER_KEY in configs #2

* Add function declaration for get_quick_tap_term

Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-12-12 16:52:22 +01:00
Joel Challis 9bc7e9afbd
Initial uk+us DD keymap_extras migration (#19031) 2022-12-09 00:54:52 +00:00
Ruslan Sayfutdinov 85ee55ff3b
Detect host OS based on USB fingerprint (#18463)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2022-12-09 03:45:30 +11:00
dexter93 f2a8a13dba
Core: Support inverted scan logic for optical switches (#19053) 2022-12-09 03:09:01 +11:00
Drashna Jaelre 50661ab65c
Remove RGBLIGHT_ANIMATIONS from core (+cleanup) (#19216) 2022-12-01 13:06:45 -08:00
QMK Bot c146563f4b Merge remote-tracking branch 'origin/master' into develop 2022-11-29 16:35:30 +00:00
Ryan 8a8000b4ec
Fix Czech sendstring LUT (#19193) 2022-11-29 16:34:57 +00:00
Felix Kuehling 4ae7525923
Bug17281 - Retain momentary layers until the end of tapping (#17282)
* Make process_tapping more readable

Move most #ifdefs into conditionally defined macros to make the logic
easier to follow.

* Retain momentary layers until the end of tapping

This allows mod-tap and layer-tap keys on layers to behave as expected.

Bug: https://github.com/qmk/qmk_firmware/issues/17281

* Add tests for delayed mod/layer release while tapping

Mods and layer key release is delayed while tapping is in progress to
ensure that the tap is registered with the modifier state and on the
layer where the key was first pressed.

Signed-off-by: Felix Kuehling <felix.kuehling@gmail.com>
2022-11-28 09:16:38 +01:00
Christopher Hoage 9b51f02f45
Fix encoder_init call order in keyboard_init (#19140) 2022-11-27 10:07:35 +11:00
Ryan e12ca14af8
Change `RGB_MATRIX_STARTUP_*` defines to `RGB_MATRIX_DEFAULT_*` (#19079) 2022-11-27 04:18:24 +11:00
Ryan 1e95f7be8f
Joystick feature improvements (#19052) 2022-11-27 03:14:45 +11:00
Ryan a5a20cc792
Change `LED_MATRIX_STARTUP_*` defines to `LED_MATRIX_DEFAULT_*` (#19080) 2022-11-27 03:14:35 +11:00
Selene ToyKeeper 31fb55ae7b
fixed MOUSEKEY_INERTIA on AVR (#19096)
Co-authored-by: Selene ToyKeeper <git@toykeeper.net>
2022-11-16 13:46:11 -08:00
Joel Challis 57ac917b43
Extend eeconfig kb/user datablock API (#19094) 2022-11-16 18:06:49 +11:00
nicknimchuk c1ef943ce0
Add missing prototype for get_hold_on_other_key_press to resolve #18855 (#19056)
Closes undefined
2022-11-14 03:34:59 +11:00
Drashna Jaelre 8812872794
Only trigger encoder callbacks on primary side (#18467)
Co-authored-by: zvecr <git@zvecr.com>
2022-11-14 02:51:19 +11:00
Ryan 6cc9513ab0
Digitizer feature improvements (#19034) 2022-11-12 23:28:11 +00:00
Drashna Jaelre 1caedd10c4
Don't clear keys on layer change unless STRICT_LAYER_RELEASE is enabled (#18577)
* Don't clear mousekeys unless clearing keys

* Revert "Don't clear mousekeys unless clearing keys"

This reverts commit 29a0c06b547d72b80d416a8b6fab478c77fbd247.

* Just don't clear anything on layer set

* Fix lint

* Enable test?
2022-11-12 02:11:50 +00:00
Joshua Diamond f6baf916a9
Avoid repeated calls to rgblight_set() in tight succession when setting lighting layers (#18338)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-11-10 20:27:40 +11:00
Wilba bc6f8dc8b0
VIA V3 - The Custom UI Update (#18222) 2022-11-10 07:46:44 +11:00
Christopher Hoage af52a9f8ad
Fix jump in report value when scale changes during cirque get report (#18992)
Fixes undefined
2022-11-09 09:48:46 -08:00
Ryan d810878d5e
Normalise output selection (Bluetooth) keycodes (#19004) 2022-11-08 19:03:31 +00:00
Joel Challis e4d2ba9a4d
Align haptic feedback keycode names (#18964) 2022-11-07 02:43:53 +00:00
Ryan 8b658dcc9a
Normalise MIDI keycodes (#18972)
* `MI_ON`, `MI_OFF`, `MI_TOG` -> `MI_TOGG`

* `MI_CH*`, `MI_CHU` -> `MI_CHNU`, `MI_CHD` -> `MI_CHND`

* `MI_VEL_*` -> `MI_VL*`, `MI_VELU`, `MI_VELD`

* `MI_TRNS_*` -> `MI_TR*`, `MI_TRNSU` -> `MI_TRSU`, `MI_TRNSD` -> `MI_TRSD`

* `MI_OCT_*` -> `MI_OC*`, `MI_OCTU`, `MI_OCTD`

* Misc controls

* Note keycodes

* Add legacy keycodes

* Regenerate keycodes

* Typo
2022-11-07 02:26:15 +00:00
Sergey Vlasov a7b2f4233c
Fix keycode parameter extraction to match the new DD keycodes (#18977)
* Add macros to extract parameters from keycode values

Implement both encoding and decoding for keycodes like TO(layer) or
LM(layer, mod) in one place, so that the decoding won't get out of sync
with the encoding.

While at it, fix some macros for creating keycode values that did not
apply the appropriate masks to parameters (and therefore could allow the
result to be out of range if a wrong parameter was passed).

* keymap_common: Use extraction macros for keycodes

* pointing_device_auto_mouse: Use extraction macros for keycodes

Fixes #18970.

* process_autocorrect: Use extraction macros for keycodes

* process_caps_word: Use extraction macros for keycodes

(Also fix a minor bug - SH_TG was not handled properly)

* process_leader: Use extraction macros for keycodes

(Technically the code is not 100% correct, because it always assumes
that the LT() or MT() action was a tap, but it's a separate issue that
already existed before the keycode changes.)

* process_unicode: Use extraction macros for keycodes

* process_unicodemap: Use extraction macros for keycodes
2022-11-06 21:39:05 +00:00
Nick Brassel 219afaba42
Reworked backlight keycodes. (#18961)
Co-authored-by: Ryan <fauxpark@gmail.com>
2022-11-06 08:11:59 +11:00
Drashna Jaelre 352beeac2f
[Bug] Fix compilation issue with WPM (#18965) 2022-11-05 19:05:01 +00:00
Joel Challis 69fa02c37d
Align audio keycode names (#18962)
* Align audio keycode names

* Update docs

* Update quantum
2022-11-05 17:05:19 +00:00
Joel Challis fd4c3f46fb
Align dynamic tapping term keycode names (#18963)
* Align dynamic tapping term keycode names

* regen header
2022-11-05 16:58:30 +00:00
Nick Brassel 5233c69bc6
Remove thermal printer. (#18959) 2022-11-06 00:15:55 +11:00
Nick Brassel 4d33f356a6
Macro keycode name refactoring (#18958) 2022-11-05 23:22:11 +11:00
Ryan fe00c80211
Reduce includes for send_string header (#18952) 2022-11-05 21:45:40 +11:00
Joel Challis a69ab05dd6
Initial DD keycode migration (#18643)
* Initial DD keycode migration

* Sort magic keycodes
2022-11-05 10:30:09 +00:00
Nick Brassel f82e90bdea
Formalise keyboard- and user-specific EEPROM blocks (#18874)
* Formalise keyboard and user eeconfig datablocks.

* Add debounce helper that checks a condition and issues post-write function invocation.

* Naming.
2022-11-04 19:20:11 +00:00
Joel Challis ea98aa8e5e
Reduce includes for dip_switch header (#18951) 2022-11-04 11:54:35 +00:00
Joel Challis fb96b88842
Reduce includes for wpm header (#18949) 2022-11-04 00:50:59 +00:00
Joel Challis 1249f74b31
Reduce includes for caps_word header (#18948) 2022-11-03 23:42:58 +00:00
Ryan fe18df9d41
Normalise Dynamic Macro keycodes (#18939)
* `DYN_REC_START1` -> `QK_DYNAMIC_MACRO_RECORD_START_1`

* `DYN_REC_START2` -> `QK_DYNAMIC_MACRO_RECORD_START_2`

* `DYN_MACRO_PLAY1` -> `QK_DYNAMIC_MACRO_PLAY_1`

* `DYN_MACRO_PLAY2` -> `QK_DYNAMIC_MACRO_PLAY_2`

* `DYN_REC_STOP` -> `QK_DYNAMIC_MACRO_RECORD_STOP`

* Update docs
2022-11-03 23:01:06 +00:00
Joel Challis 3de296f420
Reduce includes for crc header (#18947) 2022-11-03 21:36:58 +00:00
Joel Challis f11a247127
Reduce includes for sequencer header (#18946) 2022-11-03 20:44:36 +00:00
Drashna Jaelre ae5f818d5a
Simplify Keymap Config EEPROM (#18886)
* Simplify Keymap Config EEPROM

* Decrement eeconfig magic number due to eeconfig changes

* Update quantum/eeconfig.h

Co-authored-by: Joel Challis <git@zvecr.com>
2022-11-01 01:02:43 +00:00
Ryan 5974d989fe
Normalise Unicode keycodes (#18898)
* `UC_MOD`/`UC_RMOD` -> `UC_NEXT`/`UC_PREV`

* `UNICODE_MODE_*` -> `QK_UNICODE_MODE_*`

* `UC_MAC` -> `UNICODE_MODE_MACOS`

* `UC_LNX` -> `UNICODE_MODE_LINUX`

* `UC_WIN` -> `UNICODE_MODE_WINDOWS`

* `UC_BSD` -> `UNICODE_MODE_BSD`

* `UC_WINC` -> `UNICODE_MODE_WINCOMPOSE`

* `UC_EMACS` -> `UNICODE_MODE_EMACS`

* `UC__COUNT` -> `UNICODE_MODE_COUNT`

* `UC_M_MA` -> `UC_MAC`

* `UC_M_LN` -> `UC_LINX`

* `UC_M_WI` -> `UC_WIN`

* `UC_M_BS` -> `UC_BSD`

* `UC_M_WC` -> `UC_WINC`

* `UC_M_EM` -> `UC_EMAC`

* Docs

* Update quantum/unicode/unicode.h
2022-10-31 21:15:12 +00:00
Ryan 22be7e79ac
Normalise Auto Shift keycodes (#18892)
* Normalise Auto Shift keycodes

* Add keycode table to main list

* Add old keycodes to legacy header
2022-10-28 13:53:15 +01:00
Ryan 2ff1d85290
Normalise Autocorrect keycodes (#18893) 2022-10-28 12:21:24 +01:00
Ryan 7407347be1
Remove rgblight_list.h (#18878)
* Remove rgblight_list defines with no usage

* Remove rgblight_setrgb_*[_at] defines

* Remove rgblight_sethsv_* defines

* Remove rgblight_sethsv_noeeprom_* defines

* Delete rgblight_list.h and remove all references
2022-10-27 23:50:14 +01:00
Ryan 90f6b75873
Remove `KC_DELT` (#18882) 2022-10-27 19:33:38 +01:00
Ryan efe520645e
Normalise Combo keycodes (#18877) 2022-10-27 13:59:58 +01:00
Ryan 8436f0dfa6
Add missing Space Cadet alias (#18876) 2022-10-27 13:08:14 +01:00
Ryan 002b58f0e4
Normalise Space Cadet keycodes (#18864) 2022-10-27 11:19:16 +01:00
Joel Challis 8e0945c822
Fix rgb_matrix_set_flags_noeeprom declaration (#18860) 2022-10-27 09:52:51 +01:00
Nick Brassel 91b1e8a3e5
Allow overriding of dynamic keymap start address. (#18867) 2022-10-27 18:29:26 +11:00
Selene ToyKeeper 2a61bfc27d
add "inertia" mode for mouse keys (#18774)
Co-authored-by: Selene ToyKeeper <git@toykeeper.net>
2022-10-26 20:49:44 +01:00
Joel Challis ec2414c074
Deprecate `SECURE_*` keycodes for `QK_SECURE_*` (#18847)
* Deprecate SECURE_* keycodes for QK_SECURE_*

* Update keycode process

* Update process_secure.c

* Apply suggestions from code review

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2022-10-25 22:59:17 +01:00
Ryan 812001de7f
Deprecate `ONESHOT_*` keycodes for `QK_ONE_SHOT_*` (#18844)
* Deprecate `ONESHOT_*` keycodes for `QK_ONE_SHOT_*`

* Docs
2022-10-25 17:50:22 +01:00
Ryan 1d34f380eb
Deprecate `KEY_OVERRIDE_*` keycodes for `KO_*` (#18843) 2022-10-25 14:45:57 +01:00
Joel Challis 4f63be4d1d
Remove some assumptions on sequential keycode ranges (#18838) 2022-10-24 22:07:34 -07:00
Selene ToyKeeper e863c431f6
added BS_TOGG so BS_SWAP and BS_NORM can be on a single key (#18837)
Co-authored-by: Selene ToyKeeper <git@toykeeper.net>
2022-10-24 22:02:21 -07:00
Ryan a80b886751
Deprecate `CAPS_WORD`/`CAPSWRD` for `CW_TOGG` (#18834) 2022-10-24 17:30:37 +01:00
Ryan 6bbe8b6edd
Normalise Joystick and Programmable Button keycodes (#18832) 2022-10-24 15:50:33 +01:00
Ryan 74484e21af
Deprecate `VLK_TOG` for `VK_TOGG` (#18807) 2022-10-22 21:45:20 +01:00
Ryan 4f3af09209
Remove legacy fauxclicky and unicode keycodes (#18800) 2022-10-21 21:43:55 +01:00
Ryan 7cbff9d921
Deprecate `KC_LOCK` for `QK_LOCK` (#18796) 2022-10-21 15:46:10 +01:00
Ryan b33fc34967
Deprecate `KC_LEAD` for `QK_LEAD` (#18792) 2022-10-21 14:25:54 +01:00