diff options
author | Tony Crisci <tony@dubstepdish.com> | 2017-12-15 05:57:28 -0500 |
---|---|---|
committer | Tony Crisci <tony@dubstepdish.com> | 2017-12-16 07:21:21 -0500 |
commit | 030fcb64da90242718b7276a4c98cd0b2a346aad (patch) | |
tree | 81d9b0e3a87db456523e16ae55dc992ed36b99c2 | |
parent | 9eecbb5d8a988a0dded57ead1982dd0121071454 (diff) |
keyboard cleanup
-rw-r--r-- | sway/input/keyboard.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/sway/input/keyboard.c b/sway/input/keyboard.c index 2ab0206a..b9b571a6 100644 --- a/sway/input/keyboard.c +++ b/sway/input/keyboard.c @@ -10,10 +10,9 @@ static void handle_keyboard_key(struct wl_listener *listener, void *data) { struct wlr_input_device *wlr_device = keyboard->seat_device->input_device->wlr_device; struct wlr_event_keyboard_key *event = data; - wlr_keyboard_set_keymap(wlr_device->keyboard, keyboard->keymap); wlr_seat_set_keyboard(wlr_seat, wlr_device); - wlr_seat_keyboard_notify_key(wlr_seat, event->time_msec,event->keycode, - event->state); + wlr_seat_keyboard_notify_key(wlr_seat, event->time_msec, + event->keycode, event->state); } static void handle_keyboard_modifiers(struct wl_listener *listener, @@ -23,7 +22,6 @@ static void handle_keyboard_modifiers(struct wl_listener *listener, struct wlr_seat *wlr_seat = keyboard->seat_device->sway_seat->wlr_seat; struct wlr_input_device *wlr_device = keyboard->seat_device->input_device->wlr_device; - wlr_keyboard_set_keymap(wlr_device->keyboard, keyboard->keymap); wlr_seat_set_keyboard(wlr_seat, wlr_device); wlr_seat_keyboard_notify_modifiers(wlr_seat); } @@ -50,6 +48,8 @@ void sway_keyboard_configure(struct sway_keyboard *keyboard) { memset(&rules, 0, sizeof(rules)); struct input_config *input_config = keyboard->seat_device->input_device->config; + struct wlr_input_device *wlr_device = + keyboard->seat_device->input_device->wlr_device; if (input_config && input_config->xkb_layout) { rules.layout = input_config->xkb_layout; @@ -88,18 +88,16 @@ void sway_keyboard_configure(struct sway_keyboard *keyboard) { xkb_keymap_unref(keyboard->keymap); keyboard->keymap = xkb_keymap_new_from_names(context, &rules, XKB_KEYMAP_COMPILE_NO_FLAGS); - wlr_keyboard_set_keymap(keyboard->seat_device->input_device->wlr_device->keyboard, keyboard->keymap); + wlr_keyboard_set_keymap(wlr_device->keyboard, keyboard->keymap); + wlr_keyboard_set_repeat_info(wlr_device->keyboard, 25, 600); xkb_context_unref(context); wl_list_remove(&keyboard->keyboard_key.link); - wl_signal_add( - &keyboard->seat_device->input_device->wlr_device->keyboard->events.key, - &keyboard->keyboard_key); + wl_signal_add(&wlr_device->keyboard->events.key, &keyboard->keyboard_key); keyboard->keyboard_key.notify = handle_keyboard_key; wl_list_remove(&keyboard->keyboard_modifiers.link); - wl_signal_add( - &keyboard->seat_device->input_device->wlr_device->keyboard->events.modifiers, + wl_signal_add( &wlr_device->keyboard->events.modifiers, &keyboard->keyboard_modifiers); keyboard->keyboard_modifiers.notify = handle_keyboard_modifiers; } |