Wily multiple expose / redraw events
Ian Broster <[email protected]> Wed, 03 Mar 2004 15:07:42 -0000
| Newsgroups | gmane.editors.wily |
|---|---|
| Message-ID | <[email protected]> |
Ages ago, I mentioned that wily redraws itself over and over
again when resizing, taking up to 10 seconds to complete.
Finally, I had look and here is a fix for the version of libXg
that I have.
I've not sent it as a patch because I am (and wily in general is?)
in a bit of a multiple version muddle.
Replace Redraw() in libXg/gwin.c:141 with the following.
It basically checks that there are no more expose
events in the queue before committing to redrawing.
Seems to work for me, but I'm no X programmer.
Ian
static void
Redraw(Widget w, XEvent *e, Region r)
{
Reshapefunc f;
if (e && e->xexpose.count == 0)
{
f = ((GwinWidget)w)->gwin.reshaped;
if(f)
{
(*f)(w->core.x, w->core.y,
w->core.x+w->core.width, w->core.y+w->core.height);
}
}
}