input: Add comment explaining why pointer isn't freed when device is removed
When the last pointer is removed from a seat, the pointer struct is
intentionally kept. This has some interesting side effects, so I've
documented it here so people like me don't errantly assume it's a bug.
Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
diff --git a/src/input.c b/src/input.c
index d3bfa5e..c039af0 100644
--- a/src/input.c
+++ b/src/input.c
@@ -2226,6 +2226,11 @@
weston_pointer_reset_state(pointer);
seat_send_updated_caps(seat);
+
+ /* seat->pointer is intentionally not destroyed so that
+ * a newly attached pointer on this seat will retain
+ * the previous cursor co-ordinates.
+ */
}
}