gimp_overlay_child_size_allocate(): invalidate the old and new
position of the child, and simplify the code by calling our own
invalidate() function instead of duplicating its code.
gimp_overlay_child_expose(): process pending updates on the overlay
child's offscreen window before getting its pixmap.
and completely separate configure and sanity checks for gdk-pixbuf
from GTK+, because it's now distributed as a separate package. Remove
all sorts of conditional compiling based on GDK_CHECK_VERSION() and
CAIRO_VERSION.
instead of never drawing a background. Doesn't make any difference,
but makes GimpOverlayBox a more general container. Also, the offscreen
GdkWindow doesn't need any event but GDK_EXPOSURE_MASK.
* app/widgets/gimpoverlaychild.c: when creating offscreen windows, try
to set an RGBA colormap on the offscreen window's widget and use the
RGBA colormap to create the window. This has to be done here,
because it's not possible to get to the right screen *inside* the
offscreen widget before it's parented, and we need that screen
before the widget is realized, and the widget can't be parented
before it's realized or it will get the wrong parent window.
Everything clear now?
* app/widgets/gimpoverlayframe.c: draw the round corners only if the
screen has an RGBA colormap.
It keeps around its children as offscreen widgets and renders them
using a (potantially) arbitrary cairo_matrix_t (the actual API allows
for arbitrary alignment wihin the container and rotating).