summaryrefslogtreecommitdiff
path: root/quantum
AgeCommit message (Collapse)Author
2022-06-27Generic wear-leveling algorithm (#16996)Nick Brassel
* Initial import of wear-leveling algorithm. * Alignment. * Docs tweaks. * Lock/unlock. * Update quantum/wear_leveling/wear_leveling_internal.h Co-authored-by: Stefan Kerkmann <karlk90@pm.me> * More tests, fix issue with consolidation when unlocked. * More tests. * Review comments. * Add plumbing for FNV1a. * Another test checking that checksum mismatch clears the cache. * Check that the write log still gets played back. Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-06-26[Split] Verify Split Pointing Device config (#17481)Thomas Kriechbaumer
2022-06-25improvements for Cirque Pinnacle trackpads (#17091)Thomas Kriechbaumer
2022-06-24Do not enable PERMISSIVE_HOLD when TAPPING_TERM exceeds 500ms (#15674)precondition
2022-06-23Refactor steno and add `STENO_PROTOCOL = [all|txbolt|geminipr]` (#17065)precondition
* Refactor steno into STENO_ENABLE_[ALL|GEMINI|BOLT] * Update stenography documentation * STENO_ENABLE_TXBOLT → STENO_ENABLE_BOLT TXBOLT is a better name but BOLT is more consistent with the pre-existing TX Bolt related constants, which all drop the "TX " prefix * Comments * STENO_ENABLE_[GEMINI|BOLT|ALL] → STENO_PROTOCOL = [geminipr|txbolt|all] * Add note on lacking V-USB support * Clear chord at the end of the switch(mode){send_steno_chord} block * Return true if NOEVENT * update_chord_xxx → add_xxx_key_to_chord * Enable the defines for all the protocols if STENO_PROTOCOL = all * Mention how to use `steno_set_mode` * Set the default steno protocol to "all" This is done so that existing keymaps invoking `steno_set_mode` don't all suddenly break * Add data driver equivalents for stenography feature * Document format of serial steno packets (Thanks dnaq) * Add missing comma
2022-06-23In honor of king terry (#17387)SmugSam
2022-06-21Fix RGB heatmap to use XY positions and use correct led limits (#17184)Dasky
* Fix RGB heatmap to use XY positions * lower effect area limit and make configurable * tidy up macro * Fix triggering in both directions. * add docs * fix bug when decreasing value * performance tweak
2022-06-20Init eeconfig before reading handedness (#17256)Dasky
2022-06-19[Core] Mouse key kinetic mode fix (#17176)Albert Y
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-06-19Make default layer size 16-bit (#15286)Drashna Jaelre
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2022-06-13tap-dance: Restructure code and document in more detail (#16394)Jouke Witteveen
2022-06-10Ensure that rgb+via compiles in all cases (#17355)Drashna Jaelre
2022-06-10Add missing bracket for VIA brightness scaling (#17354)Dasky
2022-06-10Scale brigthness for VIA (#17352)yiancar
Co-authored-by: yiancar <yiancar@gmail.com>
2022-06-08Add support for large Mouse Reports (#16371)Drashna Jaelre
Co-authored-by: Sergey Vlasov <sigprof@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2022-06-06Move SPLIT_HAND_PIN setup to split_pre_init (#17271)Dasky
* Move SPLIT_HAND_PIN setup to split_pre_init * doppelganger should use old behaviour * Add comment for future Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Joel Challis <git@zvecr.com>
2022-06-05Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-06-05Fix and add unit tests for Caps Word to work with Unicode Map, Auto Shift, ↵Pascal Getreuer
Retro Shift. (#17284) * Fix Caps Word and Unicode Map * Tests for Caps Word + Auto Shift and Unicode Map. * Fix formatting * Add additional keyboard report expectation macros This commit defines five test utilities, EXPECT_REPORT, EXPECT_UNICODE, EXPECT_EMPTY_REPORT, EXPECT_ANY_REPORT and EXPECT_NO_REPORT for use with TestDriver. EXPECT_REPORT sets a gmock expectation that a given keyboard report will be sent. For instance, EXPECT_REPORT(driver, (KC_LSFT, KC_A)); is shorthand for EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_A))); EXPECT_UNICODE sets a gmock expectation that a given Unicode code point will be sent using UC_LNX input mode. For instance for U+2013, EXPECT_UNICODE(driver, 0x2013); expects the sequence of keys: "Ctrl+Shift+U, 2, 0, 1, 3, space". EXPECT_EMPTY_REPORT sets a gmock expectation that a given keyboard report will be sent. For instance EXPECT_EMPTY_REPORT(driver); expects a single report without keypresses or modifiers. EXPECT_ANY_REPORT sets a gmock expectation that a arbitrary keyboard report will be sent, without matching its contents. For instance EXPECT_ANY_REPORT(driver).Times(1); expects a single arbitrary keyboard report will be sent. EXPECT_NO_REPORT sets a gmock expectation that no keyboard report will be sent at all. * Add tap_key() and tap_keys() to TestFixture. This commit adds a `tap_key(key)` method to TestFixture that taps a given KeymapKey, optionally with a specified delay between press and release. Similarly, the method `tap_keys(key_a, key_b, key_c)` taps a sequence of KeymapKeys. * Use EXPECT_REPORT, tap_keys, etc. in most tests. This commit uses EXPECT_REPORT, EXPECT_UNICODE, EXPECT_EMPTY_REPORT, EXPECT_NO_REPORT, tap_key() and tap_keys() test utilities from the previous two commits in most tests. Particularly the EXPECT_REPORT macro is frequently useful and makes a nice reduction in boilerplate needed to express many tests. Co-authored-by: David Kosorin <david@kosorin.net>
2022-06-05Add keymap wrappers for introspection into the keymap. (#17229)Nick Brassel
* Introspection handlers for keymaps. * Renaming.
2022-06-01Allow larger SPLIT_USB_TIMEOUT with default SPLIT_USB_TIMEOUT_POLL (#17272)Dasky
* Switch SPLIT_USB_DETECT loop to uint16_t * Add assertion
2022-05-30Use TAP_HOLD_CAPS_DELAY for KC_LOCKING_CAPS_LOCK (#17099)precondition
2022-05-30Removes terminal from QMK. (#17258)Nick Brassel
2022-05-20Continue Caps Word when AltGr (right Alt) is held. (#17156)Pascal Getreuer
This is a minor bug fix for Caps Word. Currently, Caps Word turns off whenever a non-shift mod becomes active. This is done to avoid interfering with hotkeys. This commit makes an exception to continue Caps Word when AltGr (right Alt) is held. Outside the US, the AltGr key is used to type additional symbols (https://en.wikipedia.org/wiki/AltGr_key). Depending on the language, these may include symbols used within words like accented letters where it would be desirable to continue Caps Word.
2022-05-15Rename keymap_extras headers for consistency (#16939)Ryan
2022-05-15[Feature] Add support for multiple switchs/solenoids to Haptic Feedback ↵Drashna Jaelre
engine (#15657)
2022-05-14Enhancement and fixes of "Secure" feature (#16958)Drashna Jaelre
2022-05-14Revert "Fix kinetic mouse mode (#16951)" (#17095)Drashna Jaelre
2022-05-14[Core] Add Caps Word feature to core (#16588)Pascal Getreuer
Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-05-14Fix kinetic mouse mode (#16951)Yorick Peterse
Co-authored-by: Jan Christoph Ebersbach <jceb@e-jc.de>
2022-05-14[Core] Add Reboot keycode to core (#15990)Drashna Jaelre
2022-04-28Remove ARM pgm_read_word workaround in rgblight (#16961)Joel Challis
2022-04-29Move disable_jtag to platforms (#16960)Joel Challis
2022-04-29Sendstring keycode overhaul (#16941)Ryan
2022-04-27Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-04-28Add Ukrainian keymap header (#16947)Ryan
* Add Ukrainian keymap header * Docs
2022-04-26Joystick: Simplify report descriptor and clean up error messages (#16926)Ryan
2022-04-25Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-04-25Add missing dead key LUTs for sendstring headers (#16929)Ryan
2022-04-22Fix AVR backlight breathing: low brightness limit & exceeding breathing ↵customMK
table max index (#16770) Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: David Hoelscher <infinityis@users.noreply.github.com>
2022-04-21Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-04-21rgblight: Fix rgblight_blink_layer when multiple layers are active (#16824)Simon Arlott
2022-04-19Add hacky via support for RGB Matrix (#16086)Drashna Jaelre
2022-04-19Fixes #16705 : digital rain follows val (#16716)KoenGoe
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-04-19[Core] Use a mutex guard for split shared memory (#16647)Stefan Kerkmann
2022-04-19Add support for multiple sensors to pmw3360 (#15996)uqs
2022-04-18Fix one-shot locked modifiers (#16114)Denis Savran
* Fix state updates of one-shot locked modifiers Activating additional one-shot locked modifiers removed previously enabled locked modifiers from the state. `get_oneshot_locked_mods` returned zero when two or more one-shot locked modifiers were enabled and then one was disabled. * Do not delete one-shot locked modifiers on a one-shot layer toggle Non-locked one-shot modifiers are not removed so this behavior adds inconsistency. Also the one-shot locked modifiers state was reset without unregistering any modifiers.
2022-04-18Add customizable snake and knight animation increments (#16337)Michał Szczepaniak
2022-04-17Fix #16859. (#16865)Nick Brassel
2022-04-17[QP] Check BPP capabilities before loading the palette (#16863)Stefan Kerkmann
2022-04-17rgblight: Add functions to stop blinking one or all but one layer (#16859)Simon Arlott