summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/udev-seat.c5
-rw-r--r--src/udev-seat.h1
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;
};