On Thu, Jul 12, 2012 at 12:46:10AM +0300, Tiago Vignatti wrote: > compositor->focus was just unset, and weston_compositor_repick() has no > effect.
I've committed the patch and the call to repick doesn't do anything anymore, but it used to take away pointer focus for all seats when focus was 0. That's broken now (try overlapping a wayland client with WAYLAND_DEBUG=1 with another X window, move the cursor from the wayland client into the overlapping X window and notice how it doesn't get a wl_pointer.leave event). It's probably more corrent and cleaner to just call wl_pointer_set_focus with NULL, but that then break re-entry into the compositor window. I added a FIXME comment to your patch. > Signed-off-by: Tiago Vignatti <tiago.vigna...@intel.com> > --- > src/compositor.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/src/compositor.c b/src/compositor.c > index 5626517..95fcf2a 100644 > --- a/src/compositor.c > +++ b/src/compositor.c > @@ -1975,7 +1975,6 @@ notify_pointer_focus(struct wl_seat *seat, struct > weston_output *output, > weston_compositor_repick(compositor); > } else { > compositor->focus = 0; > - weston_compositor_repick(compositor); > } > } > > -- > 1.7.9.5 > > _______________________________________________ > wayland-devel mailing list > wayland-devel@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/wayland-devel _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel