On Wed, Jul 10, 2002 at 10:12:18PM +0200, Remko Troncon wrote:
> There seems to be a problem in the drawing of menus. The problem is as 
> follows:
> I have a grey/white DGradient as a background of my menus. When i use FreeType
> fonts as my menu font, the gradient doesnt show at all, i only get a
> plain grey background.
> I tried to trace the problem, and stumbled upon some code in menuitem.c. 
> In menuitem_paint(), there is a piece of code
>      ...
>      else if ( xft_redraw || ... ) {
>          ...
>          XClearArea(...)
>      }
> When i comment the XClearArea (or the xft_redraw condition), the
> gradient does show. I've never programmed with Xlibs before, so i don't
> really know how the XClearArea works, so maybe someone can help me find
> out what could be going wrong ?

The XClearArea() call erases the foreground of the window so that
the window backgorund shines through.  The reason why this doesn't
work with b and d gradients is that they are drawn on the window
*foreground* (unlike all other types of gradients).  That happens
only with the

  MenuFace B/DGradient ...

options.  If you instead define a colorset with the gradient and
then set

  MenuFace Colorset ...

it works as expected.

Olivier:  I guess you added that XClearArea() call.  Do you know
of any other places in the menu code where you added similar
calls?  We should continue to support direct gradient drawing
since they look a lot better this way (less blocky).

Bye

Dominik ^_^  ^_^

 --
Dominik Vogt, [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
--
Visit the official FVWM web page at <URL:http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm-workers" in the
body of a message to [EMAIL PROTECTED]
To report problems, send mail to [EMAIL PROTECTED]

Reply via email to