pointer: Make nested grabs work
Something noticed on code inspection. If we have a popup grab, it will always return FALSE. The code here clearly meant to continue if we had an existing popup grab from an existing client.
This commit is contained in:
parent
be16c2fe71
commit
756a412436
@ -589,17 +589,15 @@ meta_wayland_pointer_start_popup_grab (MetaWaylandPointer *pointer,
|
||||
|
||||
if (pointer->grab != &pointer->default_grab)
|
||||
{
|
||||
if (pointer->grab->interface == &popup_grab_interface)
|
||||
{
|
||||
if (pointer->grab->interface != &popup_grab_interface)
|
||||
return FALSE;
|
||||
|
||||
grab = (MetaWaylandPopupGrab*)pointer->grab;
|
||||
|
||||
if (wl_resource_get_client (surface->resource) != grab->grab_client)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (pointer->grab == &pointer->default_grab)
|
||||
{
|
||||
grab = g_slice_new0 (MetaWaylandPopupGrab);
|
||||
|
Loading…
Reference in New Issue
Block a user