Commit Graph

17 Commits

Author SHA1 Message Date
Josh Klar
9bec905fce
Holy refactor, Batman: full layer support (MO/DF)
Wow, what a trip this was. Layer support is now fully implemented. Other
changes here mostly revolve around the event dispatching model: more
floating state (hidden in clases wherever) has been purged, with the
reducer (now mutable, comments inline) serving, as it should, as the
sole source of truth. Thunk support has been added to our fake Redux
clone, allowing Action Creators to handle sequences of events (which is
arguably a cleaner way of handling matrix changes when not all matrix
changes should result in a new HID report - in the case of internal
keys). A whole class has been deprecated (Keymap) which only served as
another arbitor of state: instead, the MatrixScanner has been made
smarter and handles diffing internally, dispatching an Action when
needed (and allowing the reducer to parse the keymap and figure out what
key is pressed - this is the infinitely cleaner solution when layers
come into play).
2018-09-23 00:14:28 -07:00
Kyle Brown
0ae3adcc84
Added more work to shifted keycodes. 2018-09-23 00:14:28 -07:00
Kyle Brown
fb053b7de4
Fix keycodes, and update keymap in prep for working layers 2018-09-23 00:14:24 -07:00
Josh Klar
5787731890
Add support for changing to N layers as needed 2018-09-23 00:13:32 -07:00
Josh Klar
392917082a
Unbreak the general idea of KC_DF and KC_MO, though still needs heavy refactors 2018-09-23 00:13:32 -07:00
Kyle Brown
7ae2d18e45
Very broken, but some work done probably 2018-09-23 00:13:30 -07:00
Kyle Brown
d0f35100b3
Start of internal keycodes 2018-09-23 00:13:28 -07:00
Kyle Brown
f84c58a03e Added more keycodes 2018-09-20 14:50:59 -07:00
Josh Klar
3e99f0c8e3 Listen to KEY_DOWN_EVENT and KEY_UP_EVENT in the HIDHelper and actually send. Working keyboard! ⌨ 2018-09-16 23:20:16 -07:00
Josh Klar
6933d9c484 Allow super simple keymap keycode definitions (very QMK-ish) 2018-09-16 22:17:30 -07:00
Josh Klar
7f88f4f415 Implement basic HID keyboard support (send_string works great!) 2018-09-16 20:49:47 -07:00
Josh Klar
27f1e971b0 Add HID keycodes in a semi-structured manner 2018-09-16 18:30:44 -07:00
Josh Klar
ffd47c478f Move all remaining state into the single store, woot! 2018-09-03 15:21:34 -07:00
Josh Klar
ef639f5292 Add debug hooks to the event dispatcher, remove explicit prints 2018-09-03 13:50:12 -07:00
Josh Klar
d9b909d841 Event dispatching, super simply 2018-09-03 04:22:52 -07:00
Josh Klar
d5de2601d9 Prepare things for the event loop, also abstract gross stuff from end users 2018-09-03 03:22:11 -07:00
Josh Klar
e9d448af44 A basic 2x2 matrix that can auto-flash to a Feather with a compatible bootloader 2018-09-02 20:07:07 -07:00