1
0
Fork 0
forked from wry/wry

wayland: implement tablet-v2

This commit is contained in:
Julian Orth 2024-05-01 00:09:16 +02:00
parent 86e283d255
commit 7ed499eabd
62 changed files with 5174 additions and 318 deletions

View file

@ -132,3 +132,110 @@ event switch_event {
input_device: u32,
event: u32,
}
event tablet_tool_proximity_in {
}
event tablet_tool_proximity_out {
}
event tablet_tool_down {
}
event tablet_tool_up {
}
event tablet_tool_motion {
x: fixed,
y: fixed,
}
event tablet_tool_pressure {
pressure: pod(f64),
}
event tablet_tool_distance {
distance: pod(f64),
}
event tablet_tool_tilt {
tilt_x: pod(f64),
tilt_y: pod(f64),
}
event tablet_tool_rotation {
degrees: pod(f64),
}
event tablet_tool_slider {
position: pod(f64),
}
event tablet_tool_wheel {
degrees: pod(f64),
clicks: i32,
}
event tablet_tool_button {
button: u32,
state: u32,
}
event tablet_tool_frame {
seat: u32,
time_usec: pod(u64),
input_device: u32,
tool: u32,
}
event tablet_pad_mode_switch {
seat: u32,
time_usec: pod(u64),
input_device: u32,
group: u32,
mode: u32,
}
event tablet_pad_button {
seat: u32,
time_usec: pod(u64),
input_device: u32,
button: u32,
state: u32,
}
event tablet_pad_strip_source {
source: u32,
}
event tablet_pad_strip_position {
position: pod(f64),
}
event tablet_pad_strip_stop {
}
event tablet_pad_strip_frame {
seat: u32,
time_usec: pod(u64),
input_device: u32,
strip: u32,
}
event tablet_pad_ring_source {
source: u32,
}
event tablet_pad_ring_angle {
degrees: pod(f64),
}
event tablet_pad_ring_stop {
}
event tablet_pad_ring_frame {
seat: u32,
time_usec: pod(u64),
input_device: u32,
ring: u32,
}

View file

@ -0,0 +1,7 @@
request get_tablet_seat {
tablet_seat: id(zwp_tablet_seat_v2),
seat: id(wl_seat),
}
request destroy {
}

View file

@ -0,0 +1,27 @@
request destroy {
}
event buttons {
buttons: array(u32),
}
event ring {
ring: id(zwp_tablet_pad_ring_v2),
}
event strip {
strip: id(zwp_tablet_pad_strip_v2),
}
event modes {
modes: u32,
}
event done {
}
event mode_switch {
time: u32,
serial: u32,
mode: u32,
}

View file

@ -0,0 +1,22 @@
request set_feedback {
description: str,
serial: u32,
}
request destroy {
}
event source {
source: u32,
}
event angle {
degrees: fixed,
}
event stop {
}
event frame {
time: u32,
}

View file

@ -0,0 +1,22 @@
request set_feedback {
description: str,
serial: u32,
}
request destroy {
}
event source {
source: u32,
}
event position {
position: u32,
}
event stop {
}
event frame {
time: u32,
}

View file

@ -0,0 +1,43 @@
request set_feedback {
button: u32,
description: str,
serial: u32,
}
request destroy {
}
event group {
pad_group: id(zwp_tablet_pad_group_v2),
}
event path {
path: str,
}
event buttons {
buttons: u32,
}
event done {
}
event button {
time: u32,
button: u32,
state: u32,
}
event enter {
serial: u32,
tablet: id(zwp_tablet_v2),
surface: id(wl_surface),
}
event leave {
serial: u32,
surface: id(wl_surface),
}
event removed {
}

View file

@ -0,0 +1,14 @@
request destroy {
}
event tablet_added {
id: id(zwp_tablet_v2),
}
event tool_added {
id: id(zwp_tablet_tool_v2),
}
event pad_added {
id: id(zwp_tablet_pad_v2),
}

View file

@ -1,5 +1,3 @@
# requests
request set_cursor {
serial: u32,
surface: id(wl_surface),
@ -9,3 +7,84 @@ request set_cursor {
request destroy {
}
event type {
tool_type: u32,
}
event hardware_serial {
hardware_serial_hi: u32,
hardware_serial_lo: u32,
}
event hardware_id_wacom {
hardware_id_hi: u32,
hardware_id_lo: u32,
}
event capability {
capability: u32,
}
event done {
}
event removed {
}
event proximity_in {
serial: u32,
tablet: id(zwp_tablet_v2),
surface: id(wl_surface),
}
event proximity_out {
}
event down {
serial: u32,
}
event up {
}
event motion {
x: fixed,
y: fixed,
}
event pressure {
pressure: u32,
}
event distance {
distance: u32,
}
event tilt {
tilt_x: fixed,
tilt_y: fixed,
}
event rotation {
degrees: fixed,
}
event slider {
position: i32,
}
event wheel {
degrees: fixed,
clicks: i32,
}
event button {
serial: u32,
button: u32,
state: u32,
}
event frame {
time: u32,
}

21
wire/zwp_tablet_v2.txt Normal file
View file

@ -0,0 +1,21 @@
request destroy {
}
event name {
name: str,
}
event id {
vid: u32,
pid: u32,
}
event path {
path: str,
}
event done {
}
event removed {
}