--- gtk+-1.2.10/gdk/gdkevents.c.expose Sun Dec 3 11:02:49 2000 +++ gtk+-1.2.10/gdk/gdkevents.c Wed Jul 11 15:54:18 2001 @@ -383,6 +383,7 @@ struct _GdkExposeInfo { Window window; + GdkWindowPrivate *toplevel_window; gboolean seen_nonmatching; }; @@ -400,10 +401,21 @@ * we'll get a whole bunch of them interspersed with * expose events. */ - if (xevent->xany.type != Expose && - xevent->xany.type != GravityNotify) + switch (xevent->xany.type) { + case Expose: + case GravityNotify: + break; + case ConfigureNotify: + if (xevent->xconfigure.window != info->toplevel_window->xwindow) + break; + if (xevent->xconfigure.width == info->toplevel_window->width && + xevent->xconfigure.height == info->toplevel_window->height) + break; + /* Fall through */ + default: info->seen_nonmatching = TRUE; + break; } if (info->seen_nonmatching || @@ -429,6 +441,7 @@ GdkEvent event; info.window = xevent->xany.window; + info.toplevel_window = (GdkWindowPrivate *) gdk_window_get_toplevel (window); info.seen_nonmatching = FALSE; rect1.x = xevent->xexpose.x;