GdkPixbuf/X/backingstore interaction

Carl Nygard cjn at telomeric.com
Wed Jan 5 11:43:38 PST 2005


This may not be the proper list, but perhaps someone knows what's up.
I've got an app that (due to institutional inertia) has an unholy mix of
X/Motif under a Zaf layer with Gdk::Pixbuf rendering rasters.  So yeah,
who knows where the problem is coming from.

But the problem:  when a X DrawingArea widget is obscured by any other
window, the Gdk::Pixbuf doesn't render to that area obscured by the
other window.  backing-store is turned on, so vector/polygon rendering
using regular Xlib function calls are displayed when the window is
moved.

So, restated:  backing-store works for Xlib vector drawing, but
Gdk::Pixbuf seems to use some other heuristic to figure out what to draw
or doesn't take backing-store into account, and so skips rendering to
the obscured area and therefore prevents backing-store from doing its
job.  And since backing-store is on, I don't get expose events, so I
can't fix it myself with another render.

And there is an XFlush() call after rendering the Pixbuf, that's
necessary or else random rectangles don't get shown properly from the
pixbuf render procedure.

Anyone have a clue, or perhaps which other mailing list I need to ask?

Regards,
Carl






More information about the xorg mailing list