31 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
Dasky
f5b495e06e Move pointing device driver code (#24445)
Co-authored-by: Drashna Jaelre <drashna@live.com>
2024-10-25 18:11:51 +01:00
eynsai
2cb35373c6 Extended wheel reports (#24422)
extended wheel reports
2024-10-06 11:26:55 +02:00
Ryan
f8596b40a4 Normalise mouse keycodes (#23975) 2024-07-03 18:35:54 +10:00
QMK Bot
8d8d6af124 Merge remote-tracking branch 'origin/master' into develop 2024-04-04 03:39:48 +00:00
Taro Hayashi
c70ebd4a0e Fix pointing_device_set_cpi_on_side() (#23391)
Co-authored-by: Less/Rikki <86894501+lesshonor@users.noreply.github.com>
2024-04-03 20:39:02 -07:00
Drashna Jaelre
c0dbe9a336 Add utility functions for Pointing Device Auto Mouse feature (#23144)
* Make is_auto_mouse_active() available globally

* Add mouse key tracker functions for auto mouse layer
2024-03-10 05:34:41 +00:00
Ryan
2d1aed78a6 Update GPIO macro usages in core (#23093) 2024-02-18 17:08:27 +11:00
JohSchneider
d9b1ab9ae0 pointing_device: motion pin define and c-format weirdness (#22802)
the mutual exclusive POINTING_DEVICE_MOTION_PIN and SPLIT_POINTING_ENABLE influence if and how the `pointing_device_driver.get_report` is triggered. now the way the define is wrapping around an "unbraced" if leads clang-format to weirdly indent the first line in the 'SPLIT_POINTING_ENABLE' as the first command after the if.

this hints that any code addition in between the two - that possibly should run regardless, would break the if-def enabled code.

this can be solved by adding a pair of curly braces in the POINTING_DEVICE_MOTION_PIN part, to clearly denote which commands are to be skipped if the motion pin shows now activity.

Co-authored-by: Johannes <you@example.com>
2024-01-10 17:38:13 +01:00
Marcel Robitaille
ce05dc6fa1 Add option for auto mouse movement threshold (#21398)
Fixes #21396
2024-01-09 21:16:50 +11:00
Dasky
68722d35a3 Azoteq IQS5xx support (#22280) 2023-11-20 16:25:35 +00:00
Dasky
81e086b387 add missing gpio include for pointing motion pin (#22246) 2023-10-11 00:06:28 -07:00
ikorihn
4345d34cf2 Fix build error when Automatic Mouse Layer is enabled (#22229) 2023-10-08 19:43:09 +01:00
Ryan
da2d2f947d quantum: remove direct quantum.h includes (#21507) 2023-07-16 23:42:56 +10:00
Drashna Jaelre
59eb8940b0 Make Pointing Device Auto Layer more configurable (#20061)
Co-authored-by: Pablo Martínez <58857054+elpekenin@users.noreply.github.com>
2023-05-06 06:38:45 -07:00
Vladislav Marchenko
9a68472da8 Added PMW3320 driver (#19543) 2023-04-03 12:57:19 +10:00
Drashna Jaelre
297779385f Add last activity functions for pointing device (#20079) 2023-03-30 18:27:39 -07:00
Christopher Hoage
af52a9f8ad Fix jump in report value when scale changes during cirque get report (#18992)
Fixes undefined
2022-11-09 09:48:46 -08:00
Sergey Vlasov
a7b2f4233c Fix keycode parameter extraction to match the new DD keycodes (#18977)
* Add macros to extract parameters from keycode values

Implement both encoding and decoding for keycodes like TO(layer) or
LM(layer, mod) in one place, so that the decoding won't get out of sync
with the encoding.

While at it, fix some macros for creating keycode values that did not
apply the appropriate masks to parameters (and therefore could allow the
result to be out of range if a wrong parameter was passed).

* keymap_common: Use extraction macros for keycodes

* pointing_device_auto_mouse: Use extraction macros for keycodes

Fixes #18970.

* process_autocorrect: Use extraction macros for keycodes

* process_caps_word: Use extraction macros for keycodes

(Also fix a minor bug - SH_TG was not handled properly)

* process_leader: Use extraction macros for keycodes

(Technically the code is not 100% correct, because it always assumes
that the LT() or MT() action was a tap, but it's a separate issue that
already existed before the keycode changes.)

* process_unicode: Use extraction macros for keycodes

* process_unicodemap: Use extraction macros for keycodes
2022-11-06 21:39:05 +00:00
Drashna Jaelre
fb400f2ac2 Enabling Pointing Device support in register code functions (#18363) 2022-09-26 20:49:32 -07:00
Thomas
94d5fe6f90 Allow Active High for Pointing Device Motion Pin (#18404)
Needed by the Cirque Trackpad for motion detection
2022-09-24 08:44:14 -07:00
QMK Bot
df30327c19 Format code according to conventions (#18466) 2022-09-24 00:34:44 -07:00
Alabastard-64
7c1797f52f [Core] Pointing Device Automatic Mouse Layer (#17962)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-09-23 23:43:55 -07:00
Dasky
40b0b3a983 Fix cirque tap from secondary side (#18351) 2022-09-14 23:48:43 -07:00
Stefan Kerkmann
e99ec28f5f [Core] Introduce pointing device specific debug messages (#17663) 2022-08-29 19:16:49 +02:00
Drzony
f2edb73974 Fix mouse report comparison failing on shared EP (#18060)
Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com>
2022-08-28 21:34:42 -07:00
Drashna Jaelre
ac25109312 Always run pointing device init (#17936) 2022-08-07 02:18:03 -07:00
Drzony
0b726a437b Implement relative mode for Cirque trackpad (#17760) 2022-07-29 21:20:34 -07:00
Daniel Kao
b8b2e99976 Constrain Cirque Pinnacle coordinates (#17803)
Static x & y should be the same type as touchData.xValue &
touchData.yValue: uint16_t.
Their delta could be larger than int8_t and should be constrained to
mouse_xy_report_t.
2022-07-26 19:35:41 +01:00
Daniel Kao
1de6811ebe Cirque circular scroll: Support POINTING_DEVICE_COMBINED (#17654) 2022-07-25 23:19:33 -07:00
Drashna Jaelre
ee17ffadea Move Pointing Device code to a subdirectory (#17684) 2022-07-20 17:32:00 +01:00