kmk_firmware/kmk/common
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
..
abstract Very broken, but some work done probably 2018-09-23 00:13:30 -07:00
__init__.py A basic 2x2 matrix that can auto-flash to a Feather with a compatible bootloader 2018-09-02 20:07:07 -07:00
consts.py 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
event_defs.py Holy refactor, Batman: full layer support (MO/DF) 2018-09-23 00:14:28 -07:00
internal_keycodes.py Holy refactor, Batman: full layer support (MO/DF) 2018-09-23 00:14:28 -07:00
internal_state.py Holy refactor, Batman: full layer support (MO/DF) 2018-09-23 00:14:28 -07:00
keycodes.py Holy refactor, Batman: full layer support (MO/DF) 2018-09-23 00:14:28 -07:00
types.py 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
util.py Allow super simple keymap keycode definitions (very QMK-ish) 2018-09-16 22:17:30 -07:00