diff options
-rw-r--r-- | src/udev-seat.c | 5 | ||||
-rw-r--r-- | src/udev-seat.h | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/udev-seat.c b/src/udev-seat.c index 4ef7ff33..ffaf08aa 100644 --- a/src/udev-seat.c +++ b/src/udev-seat.c @@ -128,6 +128,9 @@ device_added(struct udev_device *udev_device, struct udev_input *input) device->output = output; } + if (input->enabled == 1) + weston_seat_repick(&seat->base); + return 0; } @@ -263,6 +266,8 @@ udev_input_enable(struct udev_input *input, struct udev *udev) if (udev_input_add_devices(input, udev) < 0) return -1; + input->enabled = 1; + return 0; } diff --git a/src/udev-seat.h b/src/udev-seat.h index 5bf7caad..4cb6f071 100644 --- a/src/udev-seat.h +++ b/src/udev-seat.h @@ -39,6 +39,7 @@ struct udev_input { struct wl_event_source *udev_monitor_source; char *seat_id; struct weston_compositor *compositor; + int enabled; }; |