wayland/pointer-constraints: Warp pointer after destroying resource
e994fbf0 moved warping the pointer to before the destruction of the resource to prevent dereferencing the constraint after destruction. This however meant that the constraint was still active when the motion event caused by the warp is handled, which would constrain the pointer back again to its original position.
This moves the warping of the pointer back to after the destruction of the resource and instead just retrieves the seat earlier while the constraint is still valid.
Fixes: e994fbf0 ("wayland/pointer-constraints: Warp pointer before destroying resource") Closes: #3696 (closed)