diff -pud render/gradient.c ../openbox-3.3-rc2/render/gradient.c --- render/gradient.c Sat Nov 26 20:58:09 2005 +++ ../openbox-3.3-rc2/render/gradient.c Tue Oct 14 22:59:35 2003 @@ -24,7 +24,6 @@ static void highlight(RrPixel32 *x, RrPixel32 *y, gboolean raised); static void gradient_solid(RrAppearance *l, gint w, gint h); -static void gradient_split(RrSurface *sf, gint w, gint h); static void gradient_vertical(RrSurface *sf, gint w, gint h); static void gradient_horizontal(RrSurface *sf, gint w, gint h); static void gradient_diagonal(RrSurface *sf, gint w, gint h); @@ -42,9 +41,6 @@ void RrRender(RrAppearance *a, gint w, g case RR_SURFACE_SOLID: gradient_solid(a, w, h); break; - case RR_SURFACE_SPLIT: - gradient_split(&a->surface, w, h); - break; case RR_SURFACE_VERTICAL: gradient_vertical(&a->surface, w, h); break; @@ -64,7 +60,7 @@ void RrRender(RrAppearance *a, gint w, g g_assert_not_reached(); /* unhandled gradient */ return; } - + if (a->surface.interlaced) { gint i; RrPixel32 *p; @@ -80,7 +76,7 @@ void RrRender(RrAppearance *a, gint w, g 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; @@ -203,6 +199,13 @@ static void gradient_solid(RrAppearance XFillRectangle(RrDisplay(l->inst), l->pixmap, RrColorGC(sp->primary), 0, 0, w, h); + if (sp->interlaced) { + for (i = 0; i < h; i += 2) + XDrawLine(RrDisplay(l->inst), l->pixmap, + RrColorGC(sp->interlace_color), + 0, i, w, i); + } + switch (sp->relief) { case RR_RELIEF_RAISED: if (!sp->bevel_dark) @@ -356,29 +359,6 @@ static void gradient_solid(RrAppearance } \ } -static void gradient_split(RrSurface *sf, gint w, gint h) -{ - gint x, y, pos; - RrPixel32 *data = sf->pixel_data; - RrPixel32 current; - - VARS(y); - SETUP(y, sf->primary, sf->secondary, 3); - - for (y = h - 1; y > 0; --y) { /* 0 -> h-1 */ - current = COLOR(y); - for (x = w - 1; x >= 0; --x) /* 0 -> w */ - *(data++) = current; - - pos = h / 2; - if (y == pos - 1 || y == pos || y == pos + 1) - NEXT(y); - } - current = COLOR(y); - for (x = w - 1; x >= 0; --x) /* 0 -> w */ - *(data++) = current; -} - static void gradient_horizontal(RrSurface *sf, gint w, gint h) { gint x, y; @@ -587,3 +567,4 @@ static void gradient_pyramid(RrSurface * *(end-x) = current; *(end-(inw-x)) = current; } + diff -pud render/render.h ../openbox-3.3-rc2/render/render.h --- render/render.h Sat Nov 26 01:01:35 2005 +++ ../openbox-3.3-rc2/render/render.h Fri Jul 15 09:39:31 2005 @@ -61,7 +61,6 @@ typedef enum { RR_SURFACE_NONE, RR_SURFACE_PARENTREL, RR_SURFACE_SOLID, - RR_SURFACE_SPLIT, RR_SURFACE_HORIZONTAL, RR_SURFACE_VERTICAL, RR_SURFACE_DIAGONAL, diff -pud render/theme.c ../openbox-3.3-rc2/render/theme.c --- render/theme.c Sat Nov 26 01:22:59 2005 +++ ../openbox-3.3-rc2/render/theme.c Thu Jul 14 15:41:24 2005 @@ -1200,8 +1200,6 @@ static void parse_appearance(gchar *tex, *grad = RR_SURFACE_HORIZONTAL; else if (strstr(tex, "vertical") != NULL) *grad = RR_SURFACE_VERTICAL; - else if (strstr(tex, "split") != NULL) - *grad = RR_SURFACE_SPLIT; else *grad = RR_SURFACE_DIAGONAL; } else {