2577 Commits
Author SHA1 Message Date
Jens van Almsick d3069760d7 [OS Detection] Don't classify MacOS sequences as Windows when cnt_02 >= 2 (#26303)
fix(os_detection): don't classify macOS sequences as Windows

macOS 26.x (ChibiOS) can send a late wLength=0x04 packet after the two
0xFF packets that already established OS_MACOS. The Windows check
(cnt_ff >= 2 && cnt_04 >= 1) fired on this combination and overwrites
the correct result.

Real-world Windows sequences always start with 0xFF packets (cnt_02 = 0);
macOS sequences always open with at least two 0x02 packets (cnt_02 >= 2).
Adding && setups_data.cnt_02 < 2 to the Windows condition is sufficient
to separate the two populations without affecting any existing detection.

Adds a regression test for the affected sequence.
2026-09-25 19:05:33 +01:00
Drashna Jaelre ddde988d0a Fix Fractal Pixel animation (#26463)
This change does two things:

* Rounds up instead of down, so that a low count check isn't needed.
* When the matrix col is odd, by rounding up, and checking if the right
and left indices are the same, skip one since we don't need to process
the same column twice.
2026-09-20 13:33:08 -07:00
Joel Challis efe3a8a43a Remove RGBLED_NUM and remaining references (#26474) 2026-09-20 20:43:38 +01:00
GarretonzoandNick Brassel bf56a071d2 store_or_get_action - cache keycode on key press, return cached keycode on key release (#25349)
Co-authored-by: Nick Brassel <nick@tzarc.org>
2026-09-10 14:39:53 +10:00
Joel Challis 4b16b5e520 Rework Plover HID to use Steno keycodes (#26421) 2026-08-27 02:13:00 +01:00
Joel Challis 4dfef5c638 Initial rework of steno feature (#26273) 2026-08-25 17:15:01 +01:00
Pascal Getreuer d7ad3bf8aa [Core] Fix to make Repeat Key QK_REP work with Key Overrides. (#26312) 2026-08-12 21:06:14 +01:00
Arca Artem beb57311cb qp_lvgl: always signal flush ready even with no display (#26275)
qp_lvgl_flush() called lv_disp_flush_ready() only inside the
`if (selected_display)` block. When LVGL invokes the flush callback while
selected_display is NULL, the callback returns without ever signalling
completion, so LVGL keeps the flush marked "in progress" and stalls all
further rendering.

Move lv_disp_flush_ready() out of the conditional so it is always called,
per LVGL's contract that every flush_cb must signal ready exactly once.
2026-08-05 19:36:31 +01:00
Joel Challis 2787ebb7ac Make framebuffer effects honour rgb_matrix_map_row_column_to_led (#26294) 2026-08-02 20:10:52 +01:00
Joel Challis ae0aaa50dc Port typing_heatmap animation to LED Matrix (#26300) 2026-08-02 20:10:35 +01:00
Iuri RibeiroandJoel Challis 2649ec02c9 Fix SEQUENCER_ENABLE so the sequencer feature builds again (#26322)
* Make the sequencer feature build again

SEQUENCER_ENABLE only set MUSIC_ENABLE, so -DSEQUENCER_ENABLE was never
defined and neither sequencer.c nor process_sequencer.c were compiled;
process_sequencer.c also lost the includes it depends on. Wire the make
target up like the other features and add the missing includes.

* Include sequencer.h in keyboard.c for sequencer_task()

* Update builddefs/common_features.mk

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

---------

Co-authored-by: Joel Challis <git@zvecr.com>
2026-07-13 17:38:42 -07:00
Nick Brassel a5fb55b99a Add _noeeprom variants of backlight enable/disable. (#26328) 2026-07-13 10:58:12 +01:00
Harrison 428b1cd568 Use memmove for overlapping copies in RGB/LED matrix last-hit tracker (#26306)
Use memmove for overlapping copies in RGB/LED matrix last-hit tracker
2026-07-06 12:30:13 -07:00
Joel Challis 0ec0cdde81 Consistently handle datablock init (#26282) 2026-06-24 20:36:51 +01:00
Arca Artem 1d2f52e407 process_key_lock: clear entire key state in cancel_key_lock() (#26269)
cancel_key_lock() called UNSET_KEY_STATE(0x0), which expands to clearing
only bit 0 of key_state[0]. The lock state is a 256-bit map spread across
key_state[0..3], so every locked key other than keycode 0x00 stayed
latched after a cancel.

Zero all four words so cancel_key_lock() releases every locked key, as
its name and its public declaration in process_key_lock.h imply.
2026-06-19 17:24:11 +01:00
Joel Challis 8522bb342d Enable modules to persist data (#26201) 2026-06-18 18:43:32 +01:00
precondition 721affff7b repeat_key.c: add implementation for get_last_record (#26263)
The `get_last_record` signature was present in repeat_key.h but without
any implementation in repeat_key.c which caused compilation errors for
any user of `get_last_record`.
2026-06-18 18:41:12 +01:00
Nick Brassel 92dc82ae08 Plover HID cleanup. (#26262) 2026-06-15 08:33:35 +10:00
b64014d5df Custom plover HID report type (#26018)
Co-authored-by: Nick Brassel <nick@tzarc.org>
Co-authored-by: dnaq <dnaq@users.noreply.github.com>
2026-06-14 12:38:34 +10:00
mellanslag-de d8c8872753 Key Overrides: Fix Ghost Modifier Bug on macOS (with Karabiner Elements) (#25886) 2026-06-13 22:28:41 +10:00
Joel Challis f34bc9a6bc Partially revert 26073 (#26252) 2026-06-08 08:36:45 +08:00
フィルターペーパー d19204824d Mask out active mods when unregistering after retro tapping (#26127)
Do not unregister modifiers still held by other keys
2026-05-27 00:20:24 +01:00
Pascal Getreuer 9d47119457 [Core] Options to constrain Speculative Hold: SPECULATIVE_HOLD_ONE_KEY and SPECULATIVE_HOLD_FLOW_TERM. (#26099) 2026-05-22 22:50:52 +01:00
Joel Challis ce4f342ceb Remove FORCE_NKRO (#26206) 2026-05-16 02:27:19 +01:00
Joel Challis 1a56fbece2 Fix USER_PRINT stripping out uprintf (#25919) 2026-05-07 22:33:31 +01:00
フィルターペーパー 8d8cd1ca61 Minor combo code optimisation (#26073)
* Remove redundant index initialisation
* Add early break for overlap scan
* Remove dead no_combo_keys_pressed code
* Avoid duplicate timer reset
2026-05-03 04:06:27 +01:00
Scott Lamb 0c5e36d056 Fix make test:all failures seen on macOS Tahoe (#26136) 2026-04-28 19:31:00 +01:00
Dimitris Mantzouranis cc291cff7f VIA v13 (#26001) 2026-04-17 08:53:05 +10:00
ijouw 2dc7d991b1 Either output Unicode or insert in Leader sequence (#25940) 2026-04-14 11:18:33 +01:00
Joel Challis fbb0acdaa0 Remove deprecated isLeftHand (#25897)
Refactor deprecated isLeftHand
2026-04-06 08:49:05 +08:00
windexlight 593cd168c6 Fix possible repeat key infinite recursion (#25926)
Guard against infinite recursion when pressing this sequence after fresh boot: repeat key press -> another key press/release -> repeat key release.
2026-03-31 11:12:01 +01:00
フィルターペーパー 2afc217124 Refactor Pixel Fractal effect (#26071) 2026-03-15 21:29:36 +11:00
HorrorTroll e4de46b3b0 Added PixArt PMW-3325 mouse sensor driver (#26065)
* Added support PMW3325 sensor driver

* Missing PMW3325 on pointing device document

* Suggested changes resolved
2026-03-15 21:28:40 +11:00
Joel Challis 5591a68b65 Allow custom data sync for community modules (#25955)
* Allow custom data sync for community modules

* Stub out community_config.h codegen

* Fix SPLIT_TRANSACTION_RPC logic
2026-02-19 22:03:26 +11:00
フィルターペーパー 403211f7f8 Remove unused headers (#26011) 2026-02-13 18:20:18 +00:00
フィルターペーパー 6b2a2ab7ac Return INVALID_DEFERRED_TOKEN on allocation failure (#26012)
Return the proper deferred_token type instead of boolean false.
2026-02-13 14:51:33 +08:00
フィルターペーパー edd2e3d354 Remove duplicate include of host.h (#26007) 2026-02-12 15:58:59 +00:00
フィルターペーパー 6b423c98e5 Remove an unreachable break statement (#26006) 2026-02-12 15:58:31 +00:00
フィルターペーパー 36cdac8fd3 Remove redundant EEPROM update (#26008) 2026-02-12 15:58:13 +00:00
QMK Bot 4f7a7873c8 [CI] Format code according to conventions (#26000)
Format code according to conventions
2026-02-11 16:06:13 +00:00
Pablo Martínezandフィルターペーパー fe1c3fc835 [Bugfix] WS2812 indexing in split boards (#25407)
* initial

* oops

* Update quantum/rgb_matrix/rgb_matrix.c

Co-authored-by: フィルターペーパー <76888457+filterpaper@users.noreply.github.com>

---------

Co-authored-by: フィルターペーパー <76888457+filterpaper@users.noreply.github.com>
2026-01-11 09:00:36 +08:00
QMK Bot 536a0a78b4 Merge remote-tracking branch 'origin/master' into develop 2026-01-08 05:37:18 +00:00
Joel Challis a0b15d08bc Short term fix for avr-libc@2.3.0 (#25938) 2026-01-08 16:36:40 +11:00
ijouwandsimon e1c41f1b08 Match Key override index type to bounds type to prevent overflow (#25939)
Use uint16_t to store key override index

Co-authored-by: simon <ijouwy@gmail.com>
2026-01-08 08:41:46 +08:00
QMK Bot e159fbefc5 Merge remote-tracking branch 'origin/master' into develop 2026-01-03 19:46:07 +00:00
nullptr 91a9f9e492 Fix RGB Matrix Typing Heatmap overflow (#25915) 2026-01-03 19:45:29 +00:00
QMK Bot 0d08ebb70a Merge remote-tracking branch 'origin/master' into develop 2026-01-01 12:19:53 +00:00
QMK Bot 99b5b9ab7f [CI] Regenerate Files (#25920)
Regenerate Files
2026-01-01 12:19:14 +00:00
QMK Bot 389ec6df82 Merge remote-tracking branch 'origin/master' into develop 2026-01-01 08:38:02 +00:00
PiervitandJoel Challis 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