]> git.mdlowis.com Git - proto/labwc.git/commitdiff
cursor+keyboard: chase wlroots master
authorJohan Malm <jgm323@gmail.com>
Wed, 23 Feb 2022 22:19:16 +0000 (22:19 +0000)
committerJohan Malm <jgm323@gmail.com>
Wed, 23 Feb 2022 22:19:16 +0000 (22:19 +0000)
Use wlr_input_device from input device base.
Use wlr_keyboard where possible.

src/cursor.c
src/keyboard.c

index e55dcf784f3bba67abf4ef1ea26c0c246701f609..ef158cf449679c759da770b5d14a0c7fe50b817d 100644 (file)
@@ -643,8 +643,8 @@ cursor_button(struct wl_listener *listener, void *data)
        }
 
        /* get modifiers */
-       struct wlr_input_device *device = seat->keyboard_group->input_device;
-       uint32_t modifiers = wlr_keyboard_get_modifiers(device->keyboard);
+       struct wlr_keyboard *keyboard = &seat->keyboard_group->keyboard;
+       uint32_t modifiers = wlr_keyboard_get_modifiers(keyboard);
 
        /* handle _release_ */
        if (event->state == WLR_BUTTON_RELEASED) {
index 1eef22a444a9a03123db56549579015bfd7b60e1..88c356b575e1bcc3cf0e709871b537f9f773b219 100644 (file)
@@ -41,10 +41,10 @@ keyboard_modifiers_notify(struct wl_listener *listener, void *data)
 
        if (server->cycle_view) {
                struct wlr_event_keyboard_key *event = data;
-               struct wlr_input_device *device = seat->keyboard_group->input_device;
+               struct wlr_keyboard *keyboard = &seat->keyboard_group->keyboard;
                damage_all_outputs(server);
                if ((event->state == WL_KEYBOARD_KEY_STATE_RELEASED)
-                               && !any_modifiers_pressed(device->keyboard))  {
+                               && !any_modifiers_pressed(keyboard))  {
                        /* end cycle */
                        desktop_focus_and_activate_view(&server->seat,
                                server->cycle_view);
@@ -96,13 +96,13 @@ handle_compositor_keybindings(struct wl_listener *listener,
 {
        struct seat *seat = wl_container_of(listener, seat, keyboard_key);
        struct server *server = seat->server;
-       struct wlr_input_device *device = seat->keyboard_group->input_device;
+       struct wlr_keyboard *keyboard = &seat->keyboard_group->keyboard;
 
        /* Translate libinput keycode -> xkbcommon */
        uint32_t keycode = event->keycode + 8;
        /* Get a list of keysyms based on the keymap for this keyboard */
        const xkb_keysym_t *syms;
-       int nsyms = xkb_state_key_get_syms(device->keyboard->xkb_state, keycode, &syms);
+       int nsyms = xkb_state_key_get_syms(keyboard->xkb_state, keycode, &syms);
 
        bool handled = false;
 
@@ -117,14 +117,13 @@ handle_compositor_keybindings(struct wl_listener *listener,
                        && 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(device->keyboard,
+                       wlr_keyboard_set_repeat_info(keyboard,
                                rc.repeat_rate, rc.repeat_delay);
                }
                return true;
        }
 
-       uint32_t modifiers =
-               wlr_keyboard_get_modifiers(device->keyboard);
+       uint32_t modifiers = wlr_keyboard_get_modifiers(keyboard);
 
        /* Catch C-A-F1 to C-A-F12 to change tty */
        if (event->state == WL_KEYBOARD_KEY_STATE_PRESSED) {
@@ -190,7 +189,7 @@ keyboard_key_notify(struct wl_listener *listener, void *data)
        struct server *server = seat->server;
        struct wlr_event_keyboard_key *event = data;
        struct wlr_seat *wlr_seat = server->seat.seat;
-       struct wlr_input_device *device = seat->keyboard_group->input_device;
+       struct wlr_keyboard *keyboard = &seat->keyboard_group->keyboard;
        wlr_idle_notify_activity(seat->wlr_idle, seat->seat);
 
        bool handled = false;
@@ -201,7 +200,7 @@ keyboard_key_notify(struct wl_listener *listener, void *data)
        }
 
        if (!handled) {
-               wlr_seat_set_keyboard(wlr_seat, device);
+               wlr_seat_set_keyboard(wlr_seat, &keyboard->base);
                wlr_seat_keyboard_notify_key(wlr_seat, event->time_msec,
                                             event->keycode, event->state);
        }