Cairo now a dependency of HEAD GTK+



Just committed a change to make GTK+ HEAD depend on Cairo.

One API is added:

/**
 * gdk_drawable_set_cairo_target:
 * @drawable: a #GdkDrawable
 * @cr: a cairo context
 *
 * Sets the given drawable as the target surface for a Cairo context.
 * Note that when @drawable is a window and gdk_window_begin_paint()
 * has been called, the target surface will be set to the temporary
 * backing pixmap, so you can only use the Cairo context until
 * the matching call to gdk_window_end_paint().
 *
 * Since: 2.10
 **/
void
gdk_drawable_set_cairo_target (GdkDrawable *drawable,
                               cairo_t     *cr);

There's no real use of Cairo other then tests/testcairo.c.

I've done some experimentation with making all text rendering go
through Cairo, and performance was surprisingly good considering
how much optimization work remains to be done. But there are
issues with clipping, stipples, and so forth that I have to
fix before thinking about committing that.

The main reason to put all text through Cairo is that otherwise
we'll have two separate Pango fontmaps, the Cairo one and the
Xft or Win32 one and there is a lot of of intialization overhead
per fontmap.

One thing that needs to be done soon is to create a module set
for jhbuild that builds both Cairo and HEAD GTK+. (James ...
ping? any response on my mail about creating a gtk-devel.moduleset?)

Regards,
					Owen

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]