Commit Graph

400 Commits

Author SHA1 Message Date
Joel Challis
4a5bae51cd
[Feature] Add keycode PDF(layer) to set the default layer in EEPROM (#24630)
* [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-23 10:09:34 +00:00
Joel Challis
968a611476
Review fixes for layer lock feature (#24627) 2024-11-21 13:02:49 +00:00
Drashna Jaelre
36b5559b99
[Core] Add Layer Lock feature (#23430)
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-21 17:31:54 +11:00
Ryan
9c86583981
Backward compatibility for new RGB keycode handling (#24490)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2024-11-20 09:53:33 +11:00
Stefan Kerkmann
3f9d464412
[Core] usb_device_state: consolidate usb state handling across 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-18 09:57:08 +02:00
Ryan
6fa11bf219
Separate RGBLight/RGB Matrix keycode handling (#23679)
* 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-12 18:43:50 +02:00
フィルターペーパー
8844fba607
Update combo user function variable (#24467) 2024-10-12 00:13:31 +01:00
Filios92
0fd9909657
Add combo key repress feature (#22858)
Co-authored-by: jack <jack@pngu.org>
2024-09-05 23:27:20 -07:00
Nick Brassel
70cbf08b67
Add new connection keycodes for Bluetooth, 2.4GHz. (#24251) 2024-08-27 10:52:23 +10:00
Drashna Jaelre
ab4c13e835
Add dynamic macro keyboard callbacks (#24142) 2024-08-18 01:35:10 +01:00
Nick Brassel
8abaa3bc2d
Add support for key override introspection. (#24120) 2024-07-16 09:22:17 +10:00
Nick Brassel
4ae0ca5a11
Tap dance introspection (#24049) 2024-07-06 00:57:54 +01:00
Ryan
c4a74be7f0
Add process_keycode handlers for new RGB Matrix and Underglow keycodes (#23896) 2024-06-13 21:59:46 +10:00
Ryan
224ff1d262
Normalise RGBLight (underglow) keycodes (#23656) 2024-05-07 18:36:50 +10:00
Ryan
bbf63a8466
LED Matrix: replace backlight keycodes with newly added ones (#23455) 2024-04-13 04:15:22 +01:00
Ryan
25f608c1b4
Separate keycode handling for LED Matrix and Backlight (#23426) 2024-04-11 14:06:36 +10:00
Joel Challis
3dee67a05a
Remove redundant steno eeconfig init (#22680) 2024-02-01 11:58:30 +00:00
Paul Landers
1f6dfd19cf
Ignore space cadet key release when caps word is active (#21721) 2024-01-09 22:07:10 +11:00
3araht
8b48f0dea3
MIDI sustain effect fix on qmk 0.22.2 (#22114) 2024-01-09 22:05:30 +11:00
QMK Bot
8b671b9969 Merge remote-tracking branch 'origin/master' into develop 2024-01-09 10:46:13 +00:00
Kai
13f7b68240
Fix user hook call for dynamic_macro_record_key (#22250) 2024-01-09 21:45:44 +11:00
Joel Challis
b824faca71
Align location of tap dance keycode (#22742) 2023-12-24 06:52:41 +00:00
Ryan
786ebf8760
Remove requirement for keymap_steno.h include in keymaps (#22423)
* Remove requirement for `keymap_steno.h` include in keymaps

* Add back keymap_steno.h with a note for the time being
2023-11-12 18:25:46 +11:00
Less/Rikki
2e1a27da60
fix: make clicky delay silent (#21866) 2023-11-11 21:55:47 +11:00
Isaac Elenbaas
dd94877ec6
Improve test invocation, fix Retro Shift bugs, and add Auto+Retro Shift test cases (#15889) 2023-09-25 12:45:49 +10:00
Ben Cooper
4ebb065f94
Fix combo_ref_from_layer respect different default layer [#21780] (#21781) 2023-09-25 12:32:20 +10:00
Ryan
70e34e491c
Unicode, Unicodemap and UCIS refactor (#21659) 2023-08-27 13:30:19 +10:00
James Young
eab315e935
Fix Dynamic Macro Compilation for avr-gcc 5.4.0 + Linux (#21653)
Co-authored-by: Joel Challis <git@zvecr.com>
2023-08-01 22:49:58 -07:00
Nebuleon
9bc85ff5af
Reduce needless precision in audio note frequency calculation (#21496) 2023-07-26 21:05:26 -07:00
leep-frog
2c70d38910
On-each-release tap dance function (#20255)
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2023-07-26 21:04:35 -07:00
Ryan
b090354143
haptic: naming cleanups (#21551) 2023-07-21 09:17:39 +10:00
Ryan
da2d2f947d
quantum: remove direct quantum.h includes (#21507) 2023-07-16 23:42:56 +10:00
フィルターペーパー
83c73d42f9
process_combo: restore wait.h header (#21514)
Required for `wait_ms()` function
2023-07-12 09:38:59 +01:00
Ryan
eee0384167
process_keycode: remove direct quantum.h includes (#21486) 2023-07-11 17:07:24 +10:00
precondition
1abf8f3e8b
[Feature] Send a dummy keycode to neutralize flashing modifiers in retro tap and key overrides (#20992) 2023-07-08 00:18:02 +10:00
Pablo Martínez
55295ed3dc
[Enhancement] More info on apply_autocorrect (#21056)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2023-07-08 00:13:15 +10:00
Chris Salch
e9ff66d8ad
Adds a way to separate tab from AUTO_SHIFT_SPECIAL. (#20996) 2023-07-07 21:52:24 +10: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
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
Nick Brassel
5faa23d54c
Keymap introspection for combos. (#19670) 2023-05-15 22:27:37 +10: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
Ricardo Hermida Ruiz
d3b8179f46
Prevent Tri-Layer keys from stopping caps words (#20398) 2023-04-10 13:45:25 +01: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
Stefan Kerkmann
fcf8b804ed
[Core] Refactor keyevent_t for 1ms timing resolution (#15847) 2023-04-03 18:33:45 +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
Joel Challis
c485d1cf26
Remove use of keymap.h (#20004) 2023-03-27 20:08:17 +01:00
Joel Challis
403b0addea
Align magic keycodes (#19877) 2023-02-23 08:14:29 +11:00
Drashna Jaelre
48a79b08cc
Fix functions when NO_ACTION_TAPPING is defined (#11528) 2023-02-19 12:08:03 +11:00