Age | Commit message (Collapse) | Author |
|
These timestamps are necessary to correctly deal with delayed events due to hold-tap shenanigans.
|
|
Key release events released keys on the wrong layer if the 'top layer'
was not &trans above the &mo key.
base <&mo 1>
layer 1 <&kp B>
This was caused by overwriting
`zmk_keymap_active_behavior_layer[position]` after the &mo key was
handled.
|
|
https://github.com/zmkfirmware/zmk/issues/86
|
|
* Add timestamps to position events and behaviors.
- Take original event timestamps into consideration so nested tap-holds have proper timing.
- Add position and timestamp to keycode state changed event so the one-shot behavior can properly identify other keypresses and timings.
- Add timestamp to position events received from peripheral
* reduce number of arguments to behaviors
|
|
* Use the LLVM style
* Override indent width (8) and column limit (100)
* Fixes #142.
|
|
|
|
|
|
|
|
|
|
|
|
* If you press a key with a layer active, then
deactivate the layer (e.g. releasing a `&mo`,
then release the key, we currently may send
the wrong key release event.
* Fixes #67.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Add initial event manager implementation,
roughly mimicking Nordic's API.
* Add `position_state_changed` and
`keycode_state_changed` events.
* Hook up HID and keymap to new events
instead of using behaviour global event
crazy.
|
|
* Refactor Kyria into separate left/right "revisions"
of the Kyria shield, and include central
kyria.dtsi file with common definition.
* Fixes for keymaps to work fully with matrix
transforms that override effective rows/columns.
* Add ability for matrix transform to do row/col
offsets, which is needed for split keyboards.
|
|
|
|
* Use extra comptible = "zmk,behavior-global" to add
behaviors to global bindings for event notification.
* Implement mod-tap, as a keymap binding and global one
to skip tap if other keycode pressed while held.
|
|
* Do mapping to positions right in kscan handler, and then
surface positions throughout the API.
|
|
|
|
* Clearer name to capture essence of the role of the
transform.
|
|
* Allows "gaps" for keyboards like Kyra.
* Allows keyboards with matrixes that don't map the logical key
locations to have normal looking keymaps when defined.
|
|
|