Commit graph

2528 commits

Author SHA1 Message Date
Joel Challis
a0b15d08bc
Short term fix for avr-libc@2.3.0 (#25938)
Some checks failed
CI Build Major Branch / Determine concurrency (push) Waiting to run
CI Build Major Branch / Compile keymap default (push) Blocked by required conditions
CI Build Major Branch / Compile keymap xap (push) Blocked by required conditions
CI Build Major Branch / Consolidation (push) Blocked by required conditions
CLI CI / test (push) Waiting to run
Update develop after master merge / develop_update (push) Waiting to run
Generate Docs / generate (push) Waiting to run
Lint Format / lint (push) Waiting to run
Regenerate Files / regen (push) Waiting to run
Unit Tests / test (push) Waiting to run
Essential files modified / tag (push) Has been cancelled
2026-01-08 16:36:40 +11:00
nullptr
91a9f9e492
Fix RGB Matrix Typing Heatmap overflow (#25915) 2026-01-03 19:45:29 +00:00
QMK Bot
99b5b9ab7f
[CI] Regenerate Files (#25920)
Regenerate Files
2026-01-01 12:19:14 +00:00
Piervit
6a5610a8be
Fix functions layer_debug and default_layer_debug (#25913)
Co-authored-by: Joel Challis <git@zvecr.com>
2026-01-01 00:37:25 -08:00
Joshua Diamond
2e68ddc826
Fix broken compilation when OS_DETECTION_DEBUG_ENABLE is defined (#25869)
Fix include in os_detection (broken in https://github.com/qmk/qmk_firmware/pull/24356)
2025-12-12 18:17:42 +00:00
QMK Bot
43bbb5e99a
[CI] Format code according to conventions (#25828)
Format code according to conventions
2025-11-30 20:46:22 +00:00
QMK Bot
ee60542bd6 Merge remote-tracking branch 'origin/master' into develop 2025-11-30 19:25:52 +00:00
QMK Bot
6ed61c65dd
[CI] Format code according to conventions (#25827)
Format code according to conventions
2025-11-30 19:25:13 +00:00
Stephen Ostermiller
1a954e8da5
Reduce tap dance memory usage, move state out of data (#25415)
* 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-23 22:32:36 +11:00
Julian Schuler
b321789d7b
Fix single key combos activating only once (#25198)
Co-authored-by: Julian Schuler <julianschuler@users.noreply.github.com>
2025-11-23 22:25:59 +11:00
Pascal Getreuer
4015c40ba4
[Bug][Core] Fix Speculative Hold to enable also right-handed RSFT, RCTL by default. (#25797) 2025-11-23 22:24:02 +11:00
ploopyco
1a4af3adf9
Add PixArt PAW-3222 mouse sensor driver (#25763) 2025-11-12 09:02:52 +11:00
フィルターペーパー
99b1dc84da
Fix Magic GUI masking logic (#25780) 2025-11-12 09:02:08 +11:00
Stefan Kerkmann
c68e4dec10
[Core] suspend: suppress wake up keypress (#23389)
* suspend: suppress wake up keypress

Waking the host from suspend is done by pressing any key on the
keyboard, the regular key codes assigned to the keys are not important
and must not be sent - otherwise they usually end up in password prompts
as ghost characters that have to be deleted again. This commit adds
suppression for all keys pressed at the time of wake up. Once a key is
released it functions as a regular key again.

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>

* suspend: update wake up matrix after wake up delay

If USB_SUSPEND_WAKEUP_DELAY is set, the keyboard sleeps during wake up -
which can be up to multiple seconds. To handle key presses and releases
in that time frame we have to handle the following cases:

1. Key not pressed before suspend, and not pressed after wakeup → do
   nothing (normal case).
2. Key not pressed before suspend, but pressed after wakeup → set the
   wakeup_matrix bit to 1 (so that the press and release events would be
   suppressed).
3. Key pressed before suspend, but not pressed after wakeup → do nothing
   (the release event will be generated on the first matrix_task() call
   after the wakeup).
4. Key pressed before suspend, and still pressed after wakeup → do
   nothing (the release event will be generated some time later).

Signed-off-by: Stefan Kerkmann <karlk90@pm.me>
Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

* keyboards: anavi: macropad8: disable snake and rgb_test effects

...to shrink the binary size.
2025-11-11 23:35:03 +11:00
Chaser Huang
1ddcf57382
[Feature Improvement]add option to keep layer state when recording dynamic macros (#24418)
* feat: add option to keep layer state when recording dynamic macros

* Better option macro name and lint changes
2025-11-11 23:30:42 +11:00
QMK Bot
e06d79e9c6 Merge remote-tracking branch 'origin/master' into develop 2025-11-11 12:22:27 +00:00
Cipulot
ed343ddad4
VIA Keylog Change (#25504)
* WIP

* Update via.c

temptive fix in formatting for lint errors.

* Update via.c

let's try this one, thanks mobile GitHub app to not showing spaces right.

* Update quantum/via.c

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

* Update quantum/via.c

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

* Merge branch 'qmk:master' into via_keylog_change
2025-11-11 23:21:50 +11:00
QMK Bot
019cba746d Merge remote-tracking branch 'origin/master' into develop 2025-11-11 12:21:26 +00:00
Pablo Martínez
e7ad19bb95
[Bugfix] QP error handling (#25591)
* change QP so that any func can return error (`void` -> `bool` returns)
2025-11-11 23:20:48 +11:00
Pascal Getreuer
efc5d63383
[Core] Speculative Hold option for mod-taps: hold mods instantly while unsettled. (#25572) 2025-11-11 22:27:12 +11:00
Joel Challis
01952bf39a
Implement minimal connection update logic (#25334) 2025-11-06 23:34:23 +00:00
フィルターペーパー
1a991ffd24
Guard remapping logic with MAGIC_ENABLE (#25537)
* Only perform key and mod remapping in keycode_config() and mod_config() when MAGIC_ENABLE is defined.
* If not set, these functions now return the original keycode or modifier unchanged.
* Reduces firmware size, and unnecessary code when MAGIC_ENABLE is not enabled.
* Removed space saving suggestion with magic functions from squeezing AVR documentation
2025-11-06 23:03:28 +00:00
Nimish Gåtam
8c93a33cd3
making flowtap timer public so it can be used easily with combos (#25731) 2025-11-01 23:17:50 +00:00
Aleks
cbd55b7890
Restrict mouse timer activation to movement keycodes (#25716)
Co-authored-by: フィルターペーパー <76888457+filterpaper@users.noreply.github.com>
2025-10-27 15:11:57 +11:00
Filios92
cb3149b7f2
Fix RGB matrix not syncing and turning off properly on timeout (#25467) 2025-10-26 16:47:04 -07:00
フィルターペーパー
81df543086
Debounce: Deprecate num_rows parameter (#25632) 2025-10-19 03:14:37 +01:00
Pablo Martínez
0550830909
[QP] Minor cleanup and support for RGB888 surface (#25706)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2025-10-07 19:10:38 -07:00
QMK Bot
074c49ee1c Merge remote-tracking branch 'origin/master' into develop 2025-10-06 16:28:07 +00:00
Ryan
082b69db91
Fix Slovak and Lithuanian (QWERTY) sendstring LUTs (#25703) 2025-10-06 17:27:31 +01:00
Pablo Martínez
bbd6e8ab34
[Feature] Implement mod_t packed struct (#25168) 2025-09-30 15:52:43 +01:00
Joel Challis
883465d9fb
Add generic handling to cycle LED/RGB Matrix flags (#24649) 2025-09-22 00:01:23 +01:00
フィルターペーパー
633479ced5
Restructure Pixel Rain interval code (#25516)
Co-authored-by: Joel Challis <git@zvecr.com>
2025-09-10 01:41:29 -07:00
フィルターペーパー
4bd5c033c3
Refactor debounce algorithm with static allocation (#25515)
* Refactor debounce counters with direct indexing

* Refactor code to use array indexing for debounce_counters
* Use global MATRIX_ROW_SHIFTER macro

* Refactor debounce algorithm with static allocation

* Converted arrays to static allocation
* Standardised use of MATRIX_ROWS_PER_HAND for array sizing
* Added Doxygen comments for primary debounce functions
* Removed debounce_free()

* Rewrite sym_defer_pr

* Modernise code using sym_defer_pk as template
* Format consistency with other current algorithms

* Use shorter SPDX-License-Identifier

* Remove ChibiOS core memory manager guard
* Keep type definition within DEBOUNCE guard

* Add change log

* Minor optimisation refactor

* Pre-calculate row_offset in per-key matrix loops
* Add inline compiler hints
* Improve readability with blank lines

* Limit elapsed time to the maximum debounce value

* Apply suggestions from code review

Declare counters with "DEBOUNCE_ELAPSED"

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

* Update change log to new breaking change date

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2025-09-07 13:34:05 +01:00
フィルターペーパー
d8ce8cd204
Simplify hue calculation in raindrops animation (#25587) 2025-09-06 14:43:01 -07:00
フィルターペーパー
248d7c1d6d
Simplify tap_code16_delay (#25595)
* Replaced for-loop with single wait_ms(delay) call
* Improve code consistency with tap_code_delay
2025-09-06 10:04:42 +01:00
Joel Challis
cc696a2ae8
Refactor battery driver (#25550) 2025-08-17 01:14:48 +01:00
フィルターペーパー
542440eac5
Add MATRIX_ROWS_PER_HAND definition (#25513) 2025-07-25 10:04:12 +10:00
Joel Challis
20555f9a33
Relocate AUDIO_INIT_DELAY implementation (#25491) 2025-07-14 13:53:57 +01:00
フィルターペーパー
ad4233d078
Clamp reactive offset value (#25489)
* Avoids underflow of the unsigned 8-bit
2025-07-13 16:38:32 +01:00
Ryan
6b38dc17cd
Remove deprecated RGB_ and Mouse keycodes (#25444)
* Remove deprecated `RGB_` and Mouse keycodes

* Update old mouse keycodes, 0-9/A-M

* Update old mouse keycodes, N-Z & layouts

* Missed some stuff
2025-07-11 11:05:41 -06:00
Joel Challis
7827f9fbe3
Compilation fixes for -fno-common (#25436) 2025-07-07 16:15:50 +01:00
Ryan
baf0060761
Deprecate some nonstandard mod & mod-tap keycode aliases (#25437) 2025-07-06 20:30:47 +10:00
QMK Bot
e68389a11e Merge remote-tracking branch 'origin/master' into develop 2025-07-06 06:58:28 +00:00
Ryan
ba63bac661
Add short aliases for OSM() (#25443) 2025-07-06 16:57:51 +10:00
フィルターペーパー
584ad807cc
Refactor Starlight Smooth matrix effect (#25442) 2025-07-05 23:44:44 -07:00
Joel Challis
711b109246
Mitigate VIA keylogger security issues (#25414)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2025-06-29 02:29:33 +01:00
QMK Bot
f09f3643ad Merge remote-tracking branch 'origin/master' into develop 2025-06-28 02:44:58 +00:00
Ryan
36636205dd
Clean up mod & mod-tap shortcuts (#25399) 2025-06-28 12:44:24 +10:00
Joel Challis
bc5c5e3251
Align sleep_led logic (#25395) 2025-06-27 08:17:28 +01:00
Dasky
7919848324
Add core handling for pointing device failures. (#25315) 2025-06-14 13:55:35 +01:00