udev: Use WL_OUTPUT udev attribute for pairing touchscreens to outputs

dev
Kristian Høgsberg 11 years ago
parent f2807701d9
commit 0e17de1c0b
  1. 10
      src/udev-seat.c

@ -45,8 +45,9 @@ device_added(struct udev_device *udev_device, struct udev_input *input)
{
struct weston_compositor *c;
struct evdev_device *device;
struct weston_output *output;
const char *devnode;
const char *device_seat, *seat_name;
const char *device_seat, *seat_name, *output_name;
const char *calibration_values;
int fd;
struct udev_seat *seat;
@ -120,6 +121,13 @@ device_added(struct udev_device *udev_device, struct udev_input *input)
&seat->base.pointer->x,
&seat->base.pointer->y);
output_name = udev_device_get_property_value(udev_device, "WL_OUTPUT");
if (output_name) {
wl_list_for_each(output, &c->output_list, link)
if (strcmp(output->name, output_name) == 0)
device->output = output;
}
return 0;
}

Loading…
Cancel
Save