Re-work pointer confinement machinery to avoid dependency on pointer capabilities
Issue was derived from !1471 (merged) and the comments from #885 (comment 2312934) which shows that the shell is unable to propagate confinement events when the application is mapped as fullscreen or after it, if a constraint interface was created.
With the changes from e825fe38
there's no pointer advertising on the seat, which would implicitly not create a constraint interface. Users that use
autolaunch or --
argument need to explicitly do a click activation for the propagation to take place and
ultimately have constraint.
As suggested by Pekka in #885 (comment 2312934) the idea would be to have the constraint per-seat and once pointer capability is advertised, and the client does a confine request to send out the confined event.
While doing so, should pull out the libweston/desktop depedency from libweston/input which is being used to set-up the constraint after the client requests a confine on region.