[Cairo] AA-Artifacts during/after gameoflife
Owen Taylor
otaylor at redhat.com
Tue Nov 18 12:56:02 PST 2003
On Tue, 2003-11-18 at 13:10, Christof Petig wrote:
> What about semi transparent widgets? I was under the impression that
> this needs a client side rendering library for gdk (which is what cairo
> can do). Semi transparent toplevel windows are a different problem
> (solved by keith's X server) but the current gdk implementation uses a
> lot of subwindows (which might also get semitransparent under said
> server without needing cairo?).
There aren't many subwindows in GTK+ - the only widgets with
Input/Output subwindows are:
- Widgets that scroll (Viewport, TextView, TreeView)
- Entry (I had concerns about breaking input methods by not giving
each entries it's own widget)
- Menubar (this one slipped through the cracks)
Any other widget can be made semi-transparent simply by drawing
semi-transparently. With current GDK API's, the only semi-transparent
drawing api is gdk_draw_pixmap().
http://people.redhat.com/~otaylor/gtk/lots-of-alpha.png
is an ugly screenshot I did in early 2.0 days to show what you
could do with even one function call for drawing transparently.
I think there is a lot of API and implementation efficiency we can
get with tight Cairo integration, but a Cairo theme should work now.
> All in all I was told (on gtk-devel) that semitransparent widgets need
> cairo. Imagine an semitransparent entry widget on top of an image -
> looks really cool and since I have first seen it in my wife's tax return
> program (Windows 95 and up) I have longed to do such a thing myself (gtk).
Entries will have to weight for the COMPOSITE extension; can't go
window => no_window and retain compatibility.
Regards,
Owen
More information about the cairo
mailing list