forked from AuroraMiddleware/gtk
Always report XInput events to the grab window if any.
The grab window should be the first option to send events to, else we may get unpaired events, making display->ignore_core_events go crazy. https://bugzilla.gnome.org/show_bug.cgi?id=588649
This commit is contained in:
parent
d37268c60f
commit
bfc88240b4
@ -256,17 +256,18 @@ _gdk_input_other_event (GdkEvent *event,
|
||||
if (event_type == GDK_NOTHING)
|
||||
return FALSE;
|
||||
|
||||
window = _gdk_window_get_input_window_for_event (event_window,
|
||||
event_type,
|
||||
x, y,
|
||||
xevent->xany.serial);
|
||||
/* If we're not getting any event window its likely because we're outside the
|
||||
window and there is no grab. We should still report according to the
|
||||
implicit grab though. */
|
||||
iw = ((GdkWindowObject *)event_window)->input_window;
|
||||
if (window == NULL)
|
||||
window = iw->button_down_window;
|
||||
|
||||
if (iw->button_down_window)
|
||||
window = iw->button_down_window;
|
||||
else
|
||||
window = _gdk_window_get_input_window_for_event (event_window,
|
||||
event_type,
|
||||
x, y,
|
||||
xevent->xany.serial);
|
||||
priv = (GdkWindowObject *)window;
|
||||
if (window == NULL)
|
||||
return FALSE;
|
||||
|
Loading…
Reference in New Issue
Block a user