blob: e862caf437a0316433058e9a71d3dbead812d785 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#define _POSIX_C_SOURCE 199309L
#include <wlr/util/log.h>
#include <wlr/types/wlr_virtual_keyboard_v1.h>
#include "rootston/virtual_keyboard.h"
#include "rootston/seat.h"
void handle_virtual_keyboard(struct wl_listener *listener, void *data) {
struct roots_desktop *desktop =
wl_container_of(listener, desktop, virtual_keyboard_new);
struct wlr_virtual_keyboard_v1 *keyboard = data;
struct roots_seat *seat = input_seat_from_wlr_seat(desktop->server->input,
keyboard->seat);
if (!seat) {
wlr_log(WLR_ERROR, "could not find roots seat");
return;
}
roots_seat_add_device(seat, &keyboard->input_device);
}
|