slackware-current/source/l/gtk+/gtk+-1.2.10-expose.patch

43 lines
1.1 KiB
Diff
Raw Normal View History

--- 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;