This is a very simple fix to a rather complicated issue. Essentially, hold-taps will "release" (raise) their captured keys before actually telling the event manager they have captured a key. This means the event manager ends up assigning the `last_listener_index` to the hold-tap subscription rather than the combo. So when the combo calls `ZMK_EVENT_RELEASE` it raises after the hold-tap instead of after the combo as the combo code expects. The corresponding test (which fails without this change) has also been added. |
||
---|---|---|
.. | ||
events.patterns | ||
keycode_events.snapshot | ||
native_posix_64.keymap |