summaryrefslogtreecommitdiff
path: root/quantum
AgeCommit message (Collapse)Author
2022-09-29Handle mouse keys more consistently (#18513)Drashna Jaelre
2022-09-29Start Bluetooth API (#18366)Ryan
2022-09-29Start moving towards introspection-based data retrieval (#18441)Nick Brassel
2022-09-28Fix retain brightness when val is changed while a layer is active (#18426)izmishi
* Fix retain brightness when val is changed while a layer is active * Fix retain brightness for RGBLIGHT_MODE_STATIC_GRADIENT * Fix formatting
2022-09-27Further refactoring of joystick feature (#18437)Ryan
2022-09-26Enabling Pointing Device support in register code functions (#18363)Drashna Jaelre
2022-09-26Move Oneshot mod callbacks to after mods are set (#18101)Drashna Jaelre
2022-09-26Change `{LED,RGB}_DISABLE_TIMEOUT` to `{LED,RGB}_MATRIX_TIMEOUT` (#18415)Ryan
2022-09-24Allow Active High for Pointing Device Motion Pin (#18404)Thomas
Needed by the Cirque Trackpad for motion detection
2022-09-24Format code according to conventions (#18466)QMK Bot
2022-09-23[Core] Pointing Device Automatic Mouse Layer (#17962)Alabastard-64
Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-09-23Change `DRIVER_LED_COUNT` to `{LED,RGB}_MATRIX_LED_COUNT` (#18399)Ryan
2022-09-19Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-09-19Fix int8_t overflow in RGB heatmap effect (#18410)Marius Renner
2022-09-19[Core] remove busy waiting from rgblight functions (#18418)Stefan Kerkmann
2022-09-19[QP] Add RGB565 surface. Docs clarification, cleanup, tabsification, and ↵Nick Brassel
reordering. (#18396)
2022-09-18Work around WinCompose issue for U+Axxx or U+Exxx (#18260)Joshua Diamond
* Work around WinCompose issue for U+Axxx or U+Exxx * tzarc's more efficient version Co-authored-by: Thomas <mail@tpreisner.de>
2022-09-17Fix EECONFIG_KEYMAP_UPPER_BYTE init (#18394)Dasky
Co-authored-by: Drashna Jaelre <drashna@live.com>
2022-09-17[Core] Add getreuer's Autocorrect feature to core (#15699)Drashna Jaelre
Co-authored-by: Albert Y <76888457+filterpaper@users.noreply.github.com>
2022-09-17Move mousekey keycodes into newly freed up keycode block (#16076)Drashna Jaelre
2022-09-17Chromeos keycodes (#18212)Joshua Diamond
2022-09-16Move fake EE_HANDS (#18352)Dasky
2022-09-14Fix cirque tap from secondary side (#18351)Dasky
2022-09-14Remove deprecated RESET keycode alias (#18271)Joel Challis
2022-09-12Refactor Unicode feature (#18333)Ryan
2022-09-07Move Bluetooth-related function calls up to host/keyboard level (#18274)Ryan
* Move Bluetooth-related function calls up to host/keyboard level * Remove pointless set_output() call * Move bluetooth (rn42) init to end of keyboard_init() * Enable SPI/UART for ChibiOS targets * Some more slight tweaks
2022-09-06Remove `UNICODE_KEY_OSX` and `UC_OSX` (#18290)Ryan
2022-09-06Merge remote-tracking branch 'origin/master' into developQMK Bot
2022-09-06Remove use of legacy keycode (#18281)Joel Challis
2022-09-01Better handle EEPROM reset keycode (#18244)Drashna Jaelre
2022-08-31Add unicode mode change callbacks (#18235)Joshua Diamond
2022-08-30Use a macro to compute the size of arrays at compile time (#18044)Jeff Epler
* Add ARRAY_SIZE and CEILING utility macros * Apply a coccinelle patch to use ARRAY_SIZE * fix up some straggling items * Fix 'make test:secure' * Enhance ARRAY_SIZE macro to reject acting on pointers The previous definition would not produce a diagnostic for ``` int *p; size_t num_elem = ARRAY_SIZE(p) ``` but the new one will. * explicitly get definition of ARRAY_SIZE * Convert to ARRAY_SIZE when const is involved The following spatch finds additional instances where the array is const and the division is by the size of the type, not the size of the first element: ``` @ rule5a using "empty.iso" @ type T; const T[] E; @@ - (sizeof(E)/sizeof(T)) + ARRAY_SIZE(E) @ rule6a using "empty.iso" @ type T; const T[] E; @@ - sizeof(E)/sizeof(T) + ARRAY_SIZE(E) ``` * New instances of ARRAY_SIZE added since initial spatch run * Use `ARRAY_SIZE` in docs (found by grep) * Manually use ARRAY_SIZE hs_set is expected to be the same size as uint16_t, though it's made of two 8-bit integers * Just like char, sizeof(uint8_t) is guaranteed to be 1 This is at least true on any plausible system where qmk is actually used. Per my understanding it's universally true, assuming that uint8_t exists: https://stackoverflow.com/questions/48655310/can-i-assume-that-sizeofuint8-t-1 * Run qmk-format on core C files touched in this branch Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-08-29[Core] Introduce pointing device specific debug messages (#17663)Stefan Kerkmann
2022-08-28Use `TAP_CODE_DELAY` for encoder mapping by default (#18098)Nick Brassel
2022-08-28Fix mouse report comparison failing on shared EP (#18060)Drzony
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2022-08-28Switch over MANUFACTURER and PRODUCT to string literals (#18183)Ryan
2022-08-27Clean-up of `#define _ADJUST 16` instances (#18182)James Young
* enum layer_names: 40percentclub/nori default keymap * enum layer_names: ergotravel default keymap * enum layer_names: handwired/atreus50 default keymap * enum layer_names: handwired/ortho5x13 default keymap * enum layer_names: keebio/levinson default keymap * enum layer_names: keebio/nyquist default keymap * enum layer_names: keebio/rorschach default keymap * enum layer_names: keebio/viterbi default keymap * enum layer_names: keebio/wavelet default keymap * enum layer_names: lets_split default keymap * enum layer_names: maple_computing/launchpad reference keymaps Update `default` and `default_rgb` keymaps. * enum layer_names: maple_computing/minidox default keymap * enum layer_names: miniaxe reference keymaps Update `default` and `underglow` keymaps. * enum layer_names: omkbd/ergodash/mini default keymap * enum layer_names: omkbd/ergodash/rev1 default keymap * enum layer_names: orthodox default keymap * enum layer_names: unikeyboard/divergetm2 default keymap * enum layer_names: woodkeys/scarletbandana default keymap * add _Static_assert to keymap_introspection.c
2022-08-27Add missing SS_LOPT and SS_ROPT defines (#18175)Joel Challis
2022-08-15Fix DV_SCLN and DV_COLN in keymap_spanish_dvorak.h (#18043)precondition
2022-08-15[Bug] Add key event check to `is_tap_record` and remove `is_tap_key` (#18063)Stefan Kerkmann
2022-08-14Remove duplicate COMBINING HORN in keymap_us_extended.h (#18045)precondition
2022-08-14Fix Caps Word to treat mod-taps more consistently. (#17463)Pascal Getreuer
* Fix Caps Word to treat mod-taps more consistently. Previously, holding any mod-tap key while Caps Word is active stops Caps Word, and this happens regardless of `caps_word_press_user()`. Yet for regular mod keys, AltGr (KC_RALT) is ignored, Shift keys are passed to `caps_word_press_user()` to determine whether to continue, and similarly, a key `RSFT(KC_RALT)` representing Right Shift + Alt is passed to `caps_word_press_user()` to determine whether to continue. This commit makes held mod-tap keys consistent with regular mod keys: * Holding a `RALT_T` mod-tap is ignored. * When holding a shift mod-tap key, `KC_LSFT` or `KC_RSFT` is passed to `caps_word_press_user()` to determine whether to continue. * When holding a Right Shift + Alt (`RSA_T`) mod-tap, `RSFT(KC_RALT)` is passed to `caps_word_press_user()`. Particularly, with this fix a user may choose to continue Caps Word when a shift mod-tap key is held by adding `KC_LSFT` and `KC_RSFT` cases in `caps_word_press_user()`. For instance as ``` bool caps_word_press_user(uint16_t keycode) { switch (keycode) { // Keycodes that continue Caps Word, with shift applied. case KC_A ... KC_Z: case KC_MINS: add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to the next key. return true; // Keycodes that continue Caps Word, without shifting. case KC_1 ... KC_0: case KC_BSPC: case KC_DEL: case KC_UNDS: case KC_LSFT: // <<< Added here. case KC_RSFT: return true; default: return false; // Deactivate Caps Word. } } ``` * Fix Caps Word to treat mod-taps more consistently. Previously, holding any mod-tap key while Caps Word is active stops Caps Word, and this happens regardless of `caps_word_press_user()`. Yet for regular mod keys, AltGr (KC_RALT) is ignored, Shift keys are passed to `caps_word_press_user()` to determine whether to continue, and similarly, a key `RSFT(KC_RALT)` representing Right Shift + Alt is passed to `caps_word_press_user()` to determine whether to continue. This commit makes held mod-tap keys consistent with regular mod keys: * Holding a `RALT_T` mod-tap is ignored. * When holding a shift mod-tap key, `KC_LSFT` or `KC_RSFT` is passed to `caps_word_press_user()` to determine whether to continue. * When holding a Right Shift + Alt (`RSA_T`) mod-tap, `RSFT(KC_RALT)` is passed to `caps_word_press_user()`. Particularly, with this fix a user may choose to continue Caps Word when a shift mod-tap key is held by adding `KC_LSFT` and `KC_RSFT` cases in `caps_word_press_user()`. For instance as ``` bool caps_word_press_user(uint16_t keycode) { switch (keycode) { // Keycodes that continue Caps Word, with shift applied. case KC_A ... KC_Z: case KC_MINS: add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to the next key. return true; // Keycodes that continue Caps Word, without shifting. case KC_1 ... KC_0: case KC_BSPC: case KC_DEL: case KC_UNDS: case KC_LSFT: // <<< Added here. case KC_RSFT: return true; default: return false; // Deactivate Caps Word. } } ``` * Update quantum/process_keycode/process_caps_word.c Co-authored-by: Joel Challis <git@zvecr.com>
2022-08-14Added emacs as an "operating system" for input mode. (#16949)Chewxy
2022-08-14Replace ; by : in the shifted symbols ASCII art of keymap_norman (#18029)precondition
Thanks!
2022-08-14Align TO() max layers with other keycodes (#17989)Joel Challis
2022-08-13Use ANSI ASCII art and fix comments for LT_COLN and LT_UNDS in ↵precondition
keymap_lithuanian_qwerty.h (#18028)
2022-08-13Fix LV_CCAR and LV_NCED (#18025)precondition
2022-08-13Fix Caps Word capitalization when used with Combos + Auto Shift. (#17549)Pascal Getreuer
2022-08-13Add led matrix support for CKLED2001 (#17643)lokher
2022-08-12KR_DQUO S(KR_COLN) → KR_DQUO S(KR_QUOT) (#18011)precondition