[PATCH weston] xwm: find a seat for all the surface's views

Pekka Paalanen ppaalanen at gmail.com
Tue Nov 18 05:32:37 PST 2014


On Tue, 18 Nov 2014 15:17:55 +0200
Giulio Camuffo <giuliocamuffo at gmail.com> wrote:

> 2014-11-18 15:05 GMT+02:00 Pekka Paalanen <ppaalanen at gmail.com>:
> > On Wed, 12 Nov 2014 13:32:59 +0200
> > Giulio Camuffo <giuliocamuffo at gmail.com> wrote:
> >
> >> 2014-11-12 13:25 GMT+02:00 Pekka Paalanen <ppaalanen at gmail.com>:
> >> > On Sat,  4 Oct 2014 13:58:33 +0300
> >> > Giulio Camuffo <giuliocamuffo at gmail.com> wrote:
> >> >
> >> >> This allows to move or resize a xwayland client by acting on all
> >> >> its views.
> >> >
> >> > Hmm, is this a good thing? What use cases you had in mind?
> >>
> >> I have two views for the same surface, and they are both user
> >> interactable and indistinguishable from each other. As of now, only
> >> one can be moved or resized, for no apparent reason.
> >>
> >> >
> >> > Shouldn't there be a difference between move/resizeable views and other
> >> > views? Like if you have an additional view in a pager or the alt+tab
> >> > list, that shouldn't be resizable and it might not want to be
> >> > interactive (input-capable) at all.
> >>
> >> Yeah, but that can be done in the shell, by looking at the view that
> >> is under the pointer. If that view is not supposed to be used to
> >> resize the surface, ignore the resize request.
> >
> > Only if you actually have a grab, right? Otherwise the core input event
> > machinery will relay input events to the surface. But yes, we always(?)
> > have a custom grab in those situations.
> 
> No need to have a custom grab. The weston_shell_interface resize or
> move hooks are no different to wl_shell_surface's. When called it just
> needs to check 'seat->pointer->focus'. If 'focus' is not supposed to
> be resized, bail.

Hmm, but I am talking about all the normal input events, nothing to do
with resize or move. Like if I click a window in some preview, I don't
want that click to go through to the client. *That* I think is
prevented with grabs, but if you implement something like a pager with
live views, there is no grab to prevent that.

weston_view does not yet have a "do not focus me" flag, I think. I
suppose we will fix that if someone wants to do something like a
pager. :-)

Nevermind, I'm just learning how stuff works atm.


Thanks,
pq


More information about the wayland-devel mailing list