Skip to content

Commit

Permalink
feat(split): Make combos invoke behaviors with locality
Browse files Browse the repository at this point in the history
TODO: Currently the source is hardcoded to central for source local behaviors
  • Loading branch information
caksoylar authored and petejohanson committed Sep 23, 2024
1 parent 9e36ebd commit 4fdfb01
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions app/src/combo.c
Original file line number Diff line number Diff line change
Expand Up @@ -291,21 +291,23 @@ static int release_pressed_keys() {
static inline int press_combo_behavior(struct combo_cfg *combo, int32_t timestamp) {
struct zmk_behavior_binding_event event = {
.position = combo->virtual_key_position,
.source = ZMK_POSITION_STATE_CHANGE_SOURCE_LOCAL,
.timestamp = timestamp,
};

last_combo_timestamp = timestamp;

return behavior_keymap_binding_pressed(&combo->behavior, event);
return zmk_behavior_invoke_binding(&combo->behavior, event, true);
}

static inline int release_combo_behavior(struct combo_cfg *combo, int32_t timestamp) {
struct zmk_behavior_binding_event event = {
.position = combo->virtual_key_position,
.source = ZMK_POSITION_STATE_CHANGE_SOURCE_LOCAL,
.timestamp = timestamp,
};

return behavior_keymap_binding_released(&combo->behavior, event);
return zmk_behavior_invoke_binding(&combo->behavior, event, false);
}

static void move_pressed_keys_to_active_combo(struct active_combo *active_combo) {
Expand Down

0 comments on commit 4fdfb01

Please sign in to comment.