mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-11-25 16:42:26 +00:00
Move initialization of wlr_tablet_pad into types/wlr_tablet_pad
This commit is contained in:
parent
020a33e057
commit
57babd2e13
@ -75,6 +75,7 @@ struct wlr_tablet_pad *create_libinput_tablet_pad(
|
||||
wlr_log(WLR_ERROR, "Unable to allocate wlr_tablet_pad");
|
||||
return NULL;
|
||||
}
|
||||
wlr_tablet_pad_init(wlr_tablet_pad, NULL);
|
||||
|
||||
wlr_tablet_pad->button_count =
|
||||
libinput_device_tablet_pad_get_num_buttons(libinput_dev);
|
||||
@ -83,17 +84,14 @@ struct wlr_tablet_pad *create_libinput_tablet_pad(
|
||||
wlr_tablet_pad->strip_count =
|
||||
libinput_device_tablet_pad_get_num_strips(libinput_dev);
|
||||
|
||||
wlr_list_init(&wlr_tablet_pad->paths);
|
||||
struct udev_device *udev = libinput_device_get_udev_device(libinput_dev);
|
||||
wlr_list_push(&wlr_tablet_pad->paths, strdup(udev_device_get_syspath(udev)));
|
||||
|
||||
wl_list_init(&wlr_tablet_pad->groups);
|
||||
int groups = libinput_device_tablet_pad_get_num_mode_groups(libinput_dev);
|
||||
for (int i = 0; i < groups; ++i) {
|
||||
add_pad_group_from_libinput(wlr_tablet_pad, libinput_dev, i);
|
||||
}
|
||||
|
||||
wlr_tablet_pad_init(wlr_tablet_pad, NULL);
|
||||
return wlr_tablet_pad;
|
||||
}
|
||||
|
||||
|
@ -462,8 +462,10 @@ uint32_t wlr_send_tablet_v2_tablet_pad_enter(
|
||||
uint32_t time = now.tv_nsec / 1000;
|
||||
|
||||
for (size_t i = 0; i < pad->group_count; ++i) {
|
||||
zwp_tablet_pad_group_v2_send_mode_switch(
|
||||
pad_client->groups[i], time, serial, pad->groups[i]);
|
||||
if (pad_client->groups[i]) {
|
||||
zwp_tablet_pad_group_v2_send_mode_switch(
|
||||
pad_client->groups[i], time, serial, pad->groups[i]);
|
||||
}
|
||||
}
|
||||
|
||||
return serial;
|
||||
|
@ -11,6 +11,9 @@ void wlr_tablet_pad_init(struct wlr_tablet_pad *pad,
|
||||
wl_signal_init(&pad->events.ring);
|
||||
wl_signal_init(&pad->events.strip);
|
||||
wl_signal_init(&pad->events.attach_tablet);
|
||||
|
||||
wl_list_init(&pad->groups);
|
||||
wlr_list_init(&pad->paths);
|
||||
}
|
||||
|
||||
void wlr_tablet_pad_destroy(struct wlr_tablet_pad *pad) {
|
||||
|
Loading…
Reference in New Issue
Block a user