[PATCH] Allow null surface arguments in wl_pointer.leave and wl_keyboard.leave

Jason Ekstrand jason at jlekstrand.net
Mon Jul 8 09:45:45 PDT 2013

On Mon, Jul 8, 2013 at 11:32 AM, Rob Bradford <robert.bradford at intel.com>wrote:

> On 8 July 2013 17:25, Jason Ekstrand <jason at jlekstrand.net> wrote:
> > That's exactly what weston *was* doing.  However, thanks to the destroyed
> > proxies, the clients were getting NULL anyway.  We could to go through a
> > bunch of trouble to keep the resource valid and call wl_pointer.leave on
> a
> > valid resource.  However, that's a lot more work than I thought it was
> worth
> > for no change client-side.
> Right - you spell this out nice and clearly in your excellent commit
> message. So although this is technically an API change all the clients
> already deal with this anyway - so I guess it's right to spell that
> out in the protocol.
> Out of interest - when does the compositor emit a motion event without
> a resource?

The motion event doesn't have a wl_surface associated with it, so never.
However, due to the asynchronous nature of things, the client may receive
any number of motion events between the time that it calls
wl_surface.destroy and the time that it receives wl_pointer.leave.  I don't
think the compositor sends any motion events as it process surface
destruction though.

--Jason Ekstrand
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20130708/a0218584/attachment.html>

More information about the wayland-devel mailing list