From: Dana Jansens Date: Tue, 5 Jun 2007 20:37:10 +0000 (+0000) Subject: fix parentrel bevels X-Git-Url: https://git.brokenzipper.com/gitweb?a=commitdiff_plain;h=0ba396fea03de6181a0eea737d24c6bf2190dde9;p=chaz%2Fopenbox fix parentrel bevels --- diff --git a/render/gradient.c b/render/gradient.c index 3d81d5d6..d32d9c81 100644 --- a/render/gradient.c +++ b/render/gradient.c @@ -210,18 +210,20 @@ static void gradient_parentrelative(RrAppearance *a, gint w, gint h) of the parent's, amplifying it. So instead, rerender the child with the parent's settings, but the child's bevel and interlace */ if (a->surface.relief != RR_RELIEF_FLAT && + (a->surface.parent->surface.relief != RR_RELIEF_FLAT || + a->surface.parent->surface.border) && !a->surface.parentx && !a->surface.parenty && sw == w && sh == h) { RrSurface old = a->surface; a->surface = a->surface.parent->surface; - a->surface.relief = old.relief; - a->surface.bevel = old.bevel; + + /* turn these off for the parent */ + a->surface.relief = RR_RELIEF_FLAT; + a->surface.border = FALSE; + a->surface.pixel_data = old.pixel_data; - if (old.interlaced) { - a->surface.interlaced = TRUE; - a->surface.interlace_color = old.interlace_color; - } + RrRender(a, w, h); a->surface = old; } else {