Commit e874fded authored by Alexandre Julliard's avatar Alexandre Julliard

winex11: Discard ConfigureNotify events even if the intervening events are for other windows.

parent df0f42fe
...@@ -255,23 +255,25 @@ enum event_merge_action ...@@ -255,23 +255,25 @@ enum event_merge_action
*/ */
static enum event_merge_action merge_events( XEvent *prev, XEvent *next ) static enum event_merge_action merge_events( XEvent *prev, XEvent *next )
{ {
if (prev->xany.window != next->xany.window) return MERGE_HANDLE;
switch (prev->type) switch (prev->type)
{ {
case ConfigureNotify: case ConfigureNotify:
if (prev->xany.window != next->xany.window) break;
switch (next->type) switch (next->type)
{ {
case ConfigureNotify: case ConfigureNotify:
TRACE( "discarding duplicate ConfigureNotify for window %lx\n", prev->xany.window ); if (prev->xany.window == next->xany.window)
return MERGE_DISCARD; {
TRACE( "discarding duplicate ConfigureNotify for window %lx\n", prev->xany.window );
return MERGE_DISCARD;
}
break;
case Expose: case Expose:
case PropertyNotify: case PropertyNotify:
return MERGE_KEEP; return MERGE_KEEP;
} }
break; break;
case MotionNotify: case MotionNotify:
if (next->type == MotionNotify) if (prev->xany.window == next->xany.window && next->type == MotionNotify)
{ {
TRACE( "discarding duplicate MotionNotify for window %lx\n", prev->xany.window ); TRACE( "discarding duplicate MotionNotify for window %lx\n", prev->xany.window );
return MERGE_DISCARD; return MERGE_DISCARD;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment