604 Commits

Author SHA1 Message Date
xs5871
20ba48b623 Fix oneshot as combo result getting stuck 2023-03-16 21:52:26 +00:00
xs5871
76e6feda6f Speed up and reduce memory footprint of debug template 2023-03-16 21:52:13 +00:00
xs5871
ba06d3c8a5 Fix some old holdtap inconsistencies 2023-03-16 21:50:58 +00:00
xs5871
26bf630608 Fix layer tap interrupted 2023-03-16 21:50:42 +00:00
Alex Miller
878fe0deca
Adding ComboLayers to Layers Module (See #658) (#666)
---------

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>
2023-03-10 20:40:57 +00:00
xs5871
adff02e88a Add deinit method to modules and extensions 2023-03-10 19:17:09 +00:00
xs5871
55b3a3a9b1 Move neopixel initialization into during_bootup 2023-03-10 19:16:44 +00:00
xs5871
b9c85c02e2 Remove modules and extension that fail during_bootup 2023-03-09 21:18:54 +00:00
xs5871
fd700cff44 Resolve invalid keys to KC.NO instead of ValueError 2023-03-09 21:18:02 +00:00
Phong Le
2ccad46e26
update modtap to holdtap (#718)
* update modtap to holdtap

* Update links

* Revert "Update links"

This reverts commit 8d0cda7c5a43c84dd18b927cb73672158e4f8abc.

* updated docs links

update links in docs

* Update docs/en/Getting_Started.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Update docs/en/Getting_Started.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* rename modtap.md to holdtap.md

* Update Getting_Started.md

* Update main.py

* Update modtap.py

* Update modtap.py and add notice

* Update docs/en/porting_to_kmk.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Update docs/en/handwiring.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Update docs/en/contributing.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Update docs/en/contributing.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Update docs/en/ble_hid.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Update docs/en/Getting_Started.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Update docs/en/Getting_Started.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Update docs/en/kmkpython_vs_circuitpython.md

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>

* Rename modtap.md to holdtap.md

* fixup

---------

Co-authored-by: xs5871 <60395129+xs5871@users.noreply.github.com>
2023-03-03 09:32:41 +00:00
xs5871
94c042fec5 Clear HID reports on crash 2023-03-03 07:53:46 +00:00
regicidal.plutophage
013046b44d Update power.py 2023-03-01 22:06:50 +00:00
regicidal.plutophage
18687e5278 Fix power.py module
The last update to this module used new at the time ```check_deadline``` function wrong, I seem to have fixed this.
2023-03-01 22:06:50 +00:00
xs5871
e40fd90d5c Make oneshot stay active across layer changes 2023-02-28 19:04:11 +00:00
xs5871
6532497bb2 Implement oneshot key stacking 2023-02-28 19:04:11 +00:00
Aldoo
61cf527370 Removed extra ".__iter__()" in KeyAttrDict iterator: iterating elements in the partition already implicitly calls its __iter__ method.
Actually using the dictionary iterator with this extra call would trigger an error since an iterator does not have an iterator. This is no longer the case.
2023-02-22 19:37:20 +00:00
xs5871
1f751d8374 Add mouse buttons 4/5 2023-02-21 00:57:39 +00:00
xs5871
d4fe745e71 Cleanup PointingDevice from mouse_keys 2023-02-21 00:57:39 +00:00
xs5871
a90d569690 Fix CC HID report generation 2023-02-18 08:20:52 +00:00
xs5871
449aab7dcb Add BLE_DISCONNECT key 2023-02-17 03:03:40 +00:00
xs5871
a28df47199 Refactor affected modules to use global pointing device 2023-02-14 20:42:08 +00:00
xs5871
9e5d2c24e1 Refactor for nicer pointing device axes handling 2023-02-14 20:42:08 +00:00
xs5871
ca800331de Implement axis movement method 2023-02-14 20:42:08 +00:00
xs5871
1ca27dab58 refactor mouse_keys to use PeriodicTimer 2023-02-14 20:42:08 +00:00
xs5871
fc8d5edd52 refactor mouse_keys module to use global pd 2023-02-14 20:42:08 +00:00
xs5871
e84bbd0d75 add mouse buttons to pointing device 2023-02-14 20:42:08 +00:00
xs5871
69d47343e8 implement global pointing device axis handling 2023-02-14 20:42:08 +00:00
xs5871
470f16c97f factor out consumer control from keyboard hid 2023-02-14 20:42:08 +00:00
xs5871
27f101d139 remove hid awareness from layer module 2023-02-14 20:42:08 +00:00
xs5871
2852420ea8 Bump black version 2023-02-12 22:32:39 +00:00
xs5871
408f2f487e Remove for-else-block from keys.py for readability 2023-02-11 21:27:41 +00:00
xs5871
5af52addf8 Fixes KeyAttrDict iterator 2023-02-11 21:27:41 +00:00
xs5871
e7427ff53b Split KeyAttrDict.__cache into memory friendly partitions. 2023-02-11 09:03:44 +00:00
xs5871
4d52afa086 Remove erroneous argument from hsv_to_rgbw conversion function 2023-01-26 18:57:08 -08:00
claycooper
1935f05ccb Updated key creation for consistency 2023-01-24 16:41:43 +00:00
claycooper
83110c5f80 Re-formatted key creation to be consistent 2023-01-24 16:41:43 +00:00
Conor Burns
83a597bc65 update pin names 2023-01-17 20:39:26 +00:00
Conor Burns
15d3cd706b add 0xCB Helios quickpin 2023-01-17 20:39:26 +00:00
Kryomatix
dd61c3705b
fix: LED static mode toggling (#673)
* Fix bug with static mode toggling

Previously, animation mode was set to none, which prevented the leds from being toggled. Now uses STATIC_STANDBY

* fix formatting
2023-01-11 21:49:51 +00:00
regicidal.plutophage
b109cc2c4a Update peg_oled_display.py 2023-01-08 20:58:43 +00:00
Dave Bendit
afd4982925 fix: Include Z and 0 in CapsWords ranges
Before, the allowed alphabet of characters for CapsWords was exclusive
of the letter Z, and the allowed number set was exclusive of the number
0.

Now, those characters are included, so using them won't interrupt
CapsWords.
2022-11-21 21:12:40 +00:00
xs5871
178afdfeb1 implement multiple-choice for holdtap repeat 2022-10-14 08:25:44 -07:00
xs5871
91565b02ba replace modtap validator with parent holdtap validator 2022-10-11 15:43:39 -07:00
Kyle Brown
60e8f35eca Port kb2040 boards and add to quickpin 2022-10-10 23:13:44 +00:00
xs5871
17f2961c0b fix pystack exhaust during resume_process_key.
Instead of handling resumed key events in a deep stack, buffer them
until the next main loop iteration. New resume events that may be emitted
during handling of old resumes are prepended to that buffer, i.e. take
precedence over events that happen deeper into the buffer/event stack.
Logical replay order is thus preserved.
2022-10-08 13:36:00 -07:00
xs5871
0fbba96026 add type hinting for kmk.keys 2022-10-08 13:28:29 -07:00
Kyle Brown
9431ce5ec1 Quickpin initial support 2022-10-08 19:48:30 +00:00
xs5871
218c15e322 even more typehints 2022-10-03 18:12:48 -07:00
xs5871
565ec8353b continue/finish holdtap-repeat 2022-10-02 09:54:52 -07:00
Aldoo
5efd2688d7 Support for tap behavior autorepeat for modtap and layertap keys.
Faulty logic corrected

Possibly a bug could happen whenever entering ht_press with a non-empty key_state outside of repeat context (but can it really happen?)

Some formatting to make github tests happy

Documentation for repeat behavior.

Make the tests happy again!

same...
2022-10-02 09:54:52 -07:00