compositor-drm: Enable seat constraining when configured in weston.ini

This change tweaks weston_pointer_clamp to take into consideration if a
seat is constrained to a particular output by only considering the
pointer position valid if it is within the output we a constrained to.
This function is also used for the initial warping of the pointer when a
constraint is first established.

The other two changes are the application of the constraint when either
a new device added or a new output created and therefore outputs and
input devices can be brought up in either order.

v2: the code in create_output_for_connector has been spun off into a
new function setup_output_seat_constraint (Ander). The inappropriate
warping behaviour has been resolved by using weston_pointer_clamp
(Pekka).
This commit is contained in:
Rob Bradford 2013-06-25 18:56:42 +01:00 committed by Jonas Ådahl
parent e2da4d888c
commit dcaca098f8

View file

@ -115,6 +115,11 @@ device_added(struct udev_device *udev_device, struct udev_input *input)
wl_list_insert(seat->devices_list.prev, &device->link);
if (seat->base.output && seat->base.pointer)
weston_pointer_clamp(seat->base.pointer,
&seat->base.pointer->x,
&seat->base.pointer->y);
return 0;
}