diff --git a/include/key-state.h b/include/key-state.h index e5f72919..1e7e5410 100644 --- a/include/key-state.h +++ b/include/key-state.h @@ -5,8 +5,6 @@ void key_state_set_pressed(uint32_t keycode, bool ispressed); void key_state_store_pressed_keys_as_bound(void); bool key_state_corresponding_press_event_was_bound(uint32_t keycode); - -/* returns numbers of keys still pressed in a consumed key combination */ -int key_state_bound_key_remove(uint32_t keycode); +void key_state_bound_key_remove(uint32_t keycode); #endif /* __LABWC_KEY_STATE_H */ diff --git a/src/key-state.c b/src/key-state.c index d2be5467..bc4844f6 100644 --- a/src/key-state.c +++ b/src/key-state.c @@ -63,9 +63,8 @@ key_state_corresponding_press_event_was_bound(uint32_t keycode) return false; } -int +void key_state_bound_key_remove(uint32_t keycode) { remove_key(&bound, keycode); - return bound.nr_keys; } diff --git a/src/keyboard.c b/src/keyboard.c index 2f0dd66d..1b033a41 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -67,14 +67,12 @@ static bool handle_keybinding(struct server *server, uint32_t modifiers, xkb_keysym_t sym) { struct keybind *keybind; - struct wlr_keyboard *kb = &server->seat.keyboard_group->keyboard; wl_list_for_each_reverse (keybind, &rc.keybinds, link) { if (modifiers ^ keybind->modifiers) { continue; } for (size_t i = 0; i < keybind->keysyms_len; i++) { if (xkb_keysym_to_lower(sym) == keybind->keysyms[i]) { - wlr_keyboard_set_repeat_info(kb, 0, 0); actions_run(NULL, server, &keybind->actions, 0); return true; } @@ -120,11 +118,7 @@ handle_compositor_keybindings(struct wl_listener *listener, */ if (key_state_corresponding_press_event_was_bound(keycode) && event->state == WL_KEYBOARD_KEY_STATE_RELEASED) { - int nr_bound_keys = key_state_bound_key_remove(keycode); - if (!nr_bound_keys) { - wlr_keyboard_set_repeat_info(keyboard, - rc.repeat_rate, rc.repeat_delay); - } + key_state_bound_key_remove(keycode); return true; }