Commit Graph

293 Commits

Author SHA1 Message Date
patrickmcquay
7fbda871c2 real fix for swallowing keys, use a buffer and only process one key at a time. 2022-02-04 08:37:19 -08:00
Patrick McQuay
c09cd48218 fix for dropping keys 2022-02-04 08:37:19 -08:00
Christian Tu
f90de872d8 fix bytearray.startswith not available in CircuitPython 2022-02-02 17:54:23 -08:00
Christian Tu
b6201d43d4 unit tests for execution in desktop dev environment 2022-02-01 00:48:23 -08:00
Kyle Brown
328a29c439 Fix isort on incorrect files 2022-01-28 17:58:06 -08:00
abhijithabhiakl
0bebdd6d27 fix monocolor LED 2022-01-25 23:44:07 -08:00
xs5871
245f7912b6 fix formatting 2022-01-22 08:55:40 -08:00
xs5871
8419ed789c implement keyboard lock status reader API 2022-01-22 08:55:40 -08:00
xs5871
a62d39a252
make TapDance a module (#281)
* extract tapdance logic into a module

* clean out old tapdance code

* canonicalize key variable names

* split _process_tap_dance into td_pressed and td_released

* implement consistent argument order

* update documentation

* implement Module.process_key for key interception and modification

* fix tapdance realesing instead of pressing

* fix: default parameters in key handler

* cleanup holdtap

* add error handling to modules process_key

* fix: key released too late

Tapped keys didn't release on a "key released" event, but waited for a
timeout. Resulted in, for example, modifiers applying to keys after the
modifier was released.

* fix lint/formatting

* fix tap_time reference in modtap + minimal documentation

* fix lint
2022-01-18 05:21:05 +00:00
tonasz
10f8c74ad9 Allow declaring encoders without a button 2022-01-17 21:19:51 -08:00
xs5871
410cf7af07 fix: catch IndexError when looking up key in keymap 2021-12-12 20:53:02 -08:00
Josh Klar
8063898eb2
fix: resolve #276 (reimplement #142) by allowing custom matrix scanners 2021-12-06 12:02:35 -08:00
pcharest2000
5fcd31b97c Resolve issue 285 in parsing logic, KC.NO was being parsed has an alpha, swapped the control flow treating the special case KC.NO and KC.XXXXX before alphas and nimbers
-Fix linting error on last PR
2021-12-06 11:12:55 -08:00
xs5871
e1300ba767 fix hid report type disambiguition 2021-12-06 09:22:21 -08:00
xs5871
a8b2bf75ad fix unicode sequence 2021-12-03 15:28:15 -08:00
atsuyuki
5073a29501 Fixed wrong combination keycode conversion. 2021-12-01 09:49:23 -08:00
Christian Tu
11ff03523b fix BLE HID not working with consumer keys 2021-11-06 14:44:50 -07:00
Yoichiro Tanaka
235560bf72 Fix the issue #256 by changing the timing to set True fo the hid_pending flag. 2021-10-24 14:13:15 -07:00
xs5871
3e91f63c88 fix tapdance with momentary modifiers; tap-timeout per tap.
Improves handling of momentary modifiers (i.e. different actions on hold or
press/release) as tapdance targets.
tap_time is reset for each consecutive single tap, instead of being
applied to the entire tap sequence.
2021-10-19 00:16:49 -07:00
elric91
74186f20a1 typos 2021-10-17 09:12:20 -07:00
FHA
b2db921a5b merge new_encoder.py to encoder.py 2021-10-17 09:12:20 -07:00
elric91
ed68ddb79d Merge Encoder and NewEncoder. Enhance missteps handling 2021-10-17 09:12:20 -07:00
elric91
d9fb351448 Minor corrections to pass lint test 2021-10-17 09:12:20 -07:00
elric91
484bcc4d22 Black formatting for lint test 2021-10-17 09:12:20 -07:00
elric91
7993a4e415 New encoder module, with button action support 2021-10-17 09:12:20 -07:00
atsuyuki
6357141165 Removed spaces at end of line. 2021-10-14 23:02:57 -07:00
atsuyuki
edfd127148 Fix for pass the test.
Add newline at end of file.
2021-10-14 23:02:57 -07:00
atsuyuki
04b720da5b Removed redundant parts and also simplified everything. 2021-10-14 23:02:57 -07:00
atsuyuki
d2b34097f2 Fix keymap_jp.py to pass the test 2021-10-14 23:02:57 -07:00
atsuyuki
0bc6fe0c97 Fix keymap_jp.py to pass the test 2021-10-14 23:02:57 -07:00
atsuyuki
d114a28f9e Ported keymap_jp from QMK
Ported keymap_jp from QMK. With this, KMK will work as a JIS keyboard.
2021-10-14 23:02:57 -07:00
Christian Tu
7586df8de9 fix Key no_release argument 2021-10-01 15:13:45 +02:00
atsuyuki
8167e0bc72 Fix LT() doesn't work
Fixed a problem where layer switching was not working in LT().
2021-09-27 13:47:07 +09:00
Josh Klar
e5d7333e2e
Merge pull request #238 from kbjunky/master
added ADNS9800 and mouse keys/mouse buttons/mouse wheel support
2021-09-25 22:21:16 +00:00
Josh Klar
0a2f62a90b
Merge pull request #247 from xs5871/fix-tapdance
fix tapdancing
2021-09-25 22:14:48 +00:00
Christian Tu
199ec1d914 fix last merge 2021-09-25 11:20:45 +02:00
Christian Tu
abaafbd8c5 Merge remote-tracking branch 'upstream/master' into hold-tap 2021-09-25 11:13:41 +02:00
Christian Tu
99577357f6 move HoldTap to its own file 2021-09-25 11:07:33 +02:00
Christian Tu
209acc94b2 TT toggles layer state on key hold 2021-09-25 10:54:45 +02:00
Christian Tu
4e938ef6b6 use const values instead of magic strings 2021-09-25 10:48:43 +02:00
xs5871
8a15378733
fix tapdancing 2021-09-24 13:33:03 +00:00
kbjunky
1a5e7fa54b adns9800_firmware.py removed
Cleaned up firmware file
Additional info in docs about missing firmware file and how to proceed without it.
2021-09-21 15:09:56 +08:00
Josh Klar
9c46eaeb9c
Merge pull request #240 from honboubao/ble-name
add ble_name option to KMKKeyboard.go method
2021-09-20 23:31:11 +00:00
Josh Klar
7b1d3f17c4
Merge pull request #242 from honboubao/key-memory
reduce Key objects memory footprint
2021-09-20 23:29:38 +00:00
Josh Klar
8199854b5e
Merge pull request #232 from KMKfw/topic-supervisor-ticks
Convert to supervisor ticks
2021-09-20 23:28:12 +00:00
Josh Klar
3bc038d0d8
Merge pull request #243 from honboubao/release-previously-pressed-key
always release the same key as was pressed
2021-09-20 23:25:54 +00:00
Christian Tu
0a61cbd4af change ModTap to allow for activating mod on hold, rolling key presses and fix stuck mod 2021-09-19 16:21:42 +02:00
Christian Tu
5cd34bcfea _on_matrix_changed to set key state variable 2021-09-19 04:24:37 +02:00
Kyle Brown
a894d8d140 fix sleep 2021-09-17 10:55:29 -07:00
Christian Tu
113e8eb867 fix doc typos and switched description for keycodes NUBS and NUHS 2021-09-17 08:54:22 -07:00