Subject: FVWM: bug report for FVWM 2.5.12

From: Cameron Simpson <[email-masked]>
Date: Thu, 19 May 2005 14:44:16 +1000

I have a Colorset that is used for my menus.
It appears that AspectPixmap does not work correctly for menus.
I have:

	MenuStyle "*" MenuColorset 2

and I say, via FvwmCommand, some Colorset commands to set the menu backdrop.
When I say:

	Colorset 2 AspectPixmap /path/to/image.png

I get an image that appears somewhat adjusted for the menu, but incorrectly.
The image width appears to have been stretched to fit the menu, but the
height is grossly wrong (generally it seems too short), and so the Aspect
of the image is not the original aspect.

Further, if I pop up a tall menu I get an image apparently sized for the
width of the menu (but with the aspect ratio shorter than the original
image), with the root background in the unfilled areas.

Then a subsequent short menu gets the image apparently again sized for
the width  of the menu (and again with the aspect ratio to short - more
so than before) and with left over pixels from the previous, larger,
image resize for the previous tall menu.

It appears to me that the image resizing is being called with the correct
menu width (and presumably then the correct menu height), but the new
image size computation based on this to preserve the image backdrop is
not quite right. And the buffer used for the backdrop is not initialised
correctly, but reused from an earlier buffer (or maybe just memory that
happens to overlap that).

[ Pulls out 2.5.12 source... ]
Should I be concerned by menustyle_free_face() in menustyle.c that says:

        switch (mf->type)
        {
        case GradientMenu:
                [...]
                break;
        case PixmapMenu: 
        case TiledPixmapMenu:
                if (mf->u.p)  
                {       
                        PDestroyFvwmPicture(dpy, mf->u.p);
                }
                mf->u.p = NULL;
                break;
        case SolidMenu:
                FreeColors(&mf->u.back, 1, True);
        default:
                break;
        }
        mf->type = SimpleMenu;

No AspectPixmap there. Is that a problem?

Pixmap and TiledPixmap seem to behave, but they are not what I want.

AspectPixmap would be I hope.

I basicly want a full view of the image, shrunk/enlarged to fill the menu
in one direction and padded by the default background in the other to fit
(or maybe left aligned, or tiled in that size). Since menus are dynamic
in size (i.e. WindowList menus mostly) neither Pixmap nor TiledPixmap
quite cut it because my desired backgrounds are pictures and not tiles.

Cheers,
--
Cameron Simpson <[email-masked]> DoD#743
http://www.cskk.ezoshosting.com/cs/

Disclaimer: Opinions expressed here are CORRECT, mine, and not PSLs or NMSUs..
        - Larry Cunningham <[email-masked]>
--
Visit the official FVWM web page at <URL: http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to [email-masked].
To report problems, send mail to [email-masked].