mirror of
https://github.com/swaywm/sway.git
synced 2024-11-10 12:33:50 +01:00
Fetch input device vendor/product from libinput
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4582
This commit is contained in:
parent
59f6292383
commit
f2a0e81b24
@ -65,8 +65,15 @@ struct sway_seat *input_manager_sway_seat_from_wlr_seat(struct wlr_seat *wlr_sea
|
||||
}
|
||||
|
||||
char *input_device_get_identifier(struct wlr_input_device *device) {
|
||||
int vendor = device->vendor;
|
||||
int product = device->product;
|
||||
int vendor = 0, product = 0;
|
||||
#if WLR_HAS_LIBINPUT_BACKEND
|
||||
if (wlr_input_device_is_libinput(device)) {
|
||||
struct libinput_device *libinput_dev = wlr_libinput_get_device_handle(device);
|
||||
vendor = libinput_device_get_id_vendor(libinput_dev);
|
||||
product = libinput_device_get_id_product(libinput_dev);
|
||||
}
|
||||
#endif
|
||||
|
||||
char *name = strdup(device->name ? device->name : "");
|
||||
strip_whitespace(name);
|
||||
|
||||
|
@ -1097,10 +1097,6 @@ json_object *ipc_json_describe_input(struct sway_input_device *device) {
|
||||
json_object_new_string(device->identifier));
|
||||
json_object_object_add(object, "name",
|
||||
json_object_new_string(device->wlr_device->name));
|
||||
json_object_object_add(object, "vendor",
|
||||
json_object_new_int(device->wlr_device->vendor));
|
||||
json_object_object_add(object, "product",
|
||||
json_object_new_int(device->wlr_device->product));
|
||||
json_object_object_add(object, "type",
|
||||
json_object_new_string(
|
||||
input_device_get_type(device)));
|
||||
@ -1154,6 +1150,10 @@ json_object *ipc_json_describe_input(struct sway_input_device *device) {
|
||||
libinput_dev = wlr_libinput_get_device_handle(device->wlr_device);
|
||||
json_object_object_add(object, "libinput",
|
||||
describe_libinput_device(libinput_dev));
|
||||
json_object_object_add(object, "vendor",
|
||||
json_object_new_int(libinput_device_get_id_vendor(libinput_dev)));
|
||||
json_object_object_add(object, "product",
|
||||
json_object_new_int(libinput_device_get_id_product(libinput_dev)));
|
||||
}
|
||||
#endif
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user