X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=render%2Fgradient.c;h=febf9feded76569d656c88e4e9299980408b5246;hb=5a44164be9c7171f7775f7a3f88fe4a1f93d9a1b;hp=a08c258b2b03ccc6f6de99ae1a6f0eb1843136aa;hpb=6e86a42c4b468c6c58cf1acf6b288a250543db98;p=chaz%2Fopenbox diff --git a/render/gradient.c b/render/gradient.c index a08c258b..febf9fed 100644 --- a/render/gradient.c +++ b/render/gradient.c @@ -42,6 +42,22 @@ void RrRender(RrAppearance *a, int w, int h) return; } + if (a->surface.interlaced) { + int i; + RrPixel32 *p; + + r = a->surface.interlace_color->r; + g = a->surface.interlace_color->g; + b = a->surface.interlace_color->b; + current = (r << RrDefaultRedOffset) + + (g << RrDefaultGreenOffset) + + (b << RrDefaultBlueOffset); + p = data; + for (i = 0; i < h; i += 2, p += w) + for (x = 0; x < w; ++x, ++p) + *p = current; + } + if (a->surface.relief == RR_RELIEF_FLAT && a->surface.border) { r = a->surface.border_color->r; g = a->surface.border_color->g; @@ -166,7 +182,8 @@ static void gradient_solid(RrAppearance *l, int w, int h) if (sp->interlaced) { for (i = 0; i < h; i += 2) - XDrawLine(RrDisplay(l->inst), l->pixmap, RrColorGC(sp->secondary), + XDrawLine(RrDisplay(l->inst), l->pixmap, + RrColorGC(sp->interlace_color), 0, i, w, i); }