I think that happens because of how cairo maps coordinates. You have to shift 
some coordinates by 0.5px
depending on the line width. The first question here explains it better than i 
can:
http://cairographics.org/FAQ ( btw, i guess i'm a 'pixels are little squares' 
person :) )

I already had a patch for that somewhere, I'll bring it up to date and post it.

Mike Cook wrote:
Since I first tried nVidia's AIGLX with Compiz I've been seeing some pretty
consistent drawing problems on GWD's minimize and maximize buttons on hover.
It looks like part of the fill is drawn with low alpha.  I haven't been able to
duplicate it when using Xgl...  Here's a quick vid of what I'm seeing:
http://s154.photobucket.com/albums/s273/m1kecook/Compiz/?action=view&current=gwd-button-prob.flv

The following patch seems to work around the problem (but only if I set the
alpha less than 1.0):
--- gtk/window-decorator/gtk-window-decorator.c
+++ gtk/window-decorator/gtk-window-decorator.c
@@ -943,7 +943,7 @@ button_state_paint (cairo_t   *cr,
        cairo_stroke_preserve (cr);

        if (state & IN_EVENT_WINDOW)
-           cairo_set_source_rgb (cr, 1.0, 1.0, 1.0);
+           cairo_set_source_rgba (cr, 1.0, 1.0, 1.0, 0.99);
        else
            cairo_set_source_rgba (cr, color->r, color->g, color->b, 0.95);


I'm not proficient enough with Cairo to know if this is a bug there, with
nVidia's driver, or something in GWD or somewhere else.  Anyone have insights?

...MC
_______________________________________________
compiz mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/compiz

_______________________________________________
compiz mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/compiz

Reply via email to