Compositor grabs (was: Re: [PATCH] protocol: Add DnD actions)

Carlos Garnacho carlosg at
Fri Apr 17 08:52:34 PDT 2015

Hey Michal,

On Fri, Apr 17, 2015 at 4:27 PM, Michal Suchanek <hramrach at> wrote:


>> Nothing prevents wayland compositors today from undoing grabs when
>> clients get destroyed, or surfaces don't respond to pings. Affecting
>> this proposal, the pointer should re-enter the surface underneath and
>> keyboard focus restablished after the grab is "broken".
> Nothing prevents the X server either. It hopefully breaks the grabs
> initiated by clients when they are destroyed, too. However, there is
> no mechanism for breaking a grab of a client other than destroying it
> *and* destroying the client cannot be done from within the X session
> because it is grabbed.

Sure, Xorg's server will also clean up the grab after the client is
destroyed. There's a XF86Ungrab keysym that also does that, but it's
usually disabled by default, because screensavers and security.

Wayland actually got this right, grabs happen within the compositor,
on well defined entry points, so the compositor can impose its
lifetime. This is a merit of wayland I'm not discussing at all, I'm
more concerned on what happens with the devices that didn't
*seemingly* need grabbing.


More information about the wayland-devel mailing list