Re: Resize with hints + mplayer



On 9/9/07, Janek Kozicki <janek_listy wp pl> wrote:
> interesting. Well, for me it doesn't work either... Perhaps someone
> has a patch on this? We could check inside fvwm2 code how to do this.

A: The ICCCM specification allows applications to specify certain
   properties the window manager should honor, such as aspect
   ratio (PAspect) or increments to be resized in (PResizeInc).  Of
   course, sometimes these properties won't perfectly match the
   size of your desktop (or ewmh struts), if that should happen,
   you will get gaps.

Looks like we're honoring PResizeInc but not PAspect, since terminal
windows do the right thing, but media windows don't.

fvwm2 geometry.c constrain_size(xmotion, ymotion)
...
    /*
     * The math looks like this:
     *
     * minAspectX    dwidth     maxAspectX
     * ---------- <= ------- <= ----------
     * minAspectY    dheight    maxAspectY
     *
     * If that is multiplied out, then the width and height are
     * invalid in the following situations:
     *
     * minAspectX * dheight > minAspectY * dwidth
     * maxAspectX * dheight < maxAspectY * dwidth
     *
     */

Basically, they add to xmotion if it's too narrow, and ymotion if it's
too wide.  The code is pretty ancient, and has a do { } while loop in
it which means if the implementation is screwed up it can simply spin.
  Sawfish does recognize PAspect in the C source, but I don't know my
lisp well enough to see how it's used.  Anyone?



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]