[GRASS5] X monitor resize problem...
Glynn Clements
glynn.clements at virgin.net
Wed Jun 13 22:48:03 EDT 2001
Eric G. Miller wrote:
> > BTW, I'm open to comments as to whether the existing behaviour is
> > correct. It's arguable that it shouldn't be using the US* flags unless
> > the XDRIVER_* environments variables are set. Also, whether to specify
> > the position when XDRIVER_{LEFT,TOP} are unset is a matter of
> > preference. Personally I'd rather let the WM place it, but this won't
> > happen if the program always requests a specific location.
>
> Thanks for the info. I guess I'll hold off filing a bug report against
> blackbox unless I can be sure it isn't responding correctly to the
> attribute settings.
It isn't.
The {US,P}{Size,Position} settings are only relevant at the time the
window is mapped. X clients don't generally change these settings if
the window is subsequently moved or resized, either by the program or
the user.
The P{Min,Max}Size settings are presumably relevant throughout the
window's lifetime. It might be understandable if a WM failed to act
upon a change in these flags after the window was mapped.
However that doesn't match what you report regarding blackbox. No
minimum or maximum size is specified at map time; instead, they are
set when a client connects (provided that no redraw is in progress)
and cleared when the client disconnects.
AFAICT, blackbox acknowledges the setting of these flags but ignores
the fact that they are subsequently cleared. If it was checking the
state at map time but ignoring subsequent changes, the result would be
that the window was always resizable without restriction.
Aside: the X11R6.4 version of the ICCCM replaces the x, y, width and
height fields from the description of the WM_SIZE_HINTS type (the X
protocol equivalent of the Xlib XSizeHints structure) with:
pad 4*CARD32 For backwards compatibility
Similarly, the XSetWMNormalHints manpage says:
The x, y, width, and height members are now obsolete and
are left solely for compatibility reasons.
The implication is that the WM should use the window's position and/or
size if the corresponding {US,P}{Size,Position} flags are set.
--
Glynn Clements <glynn.clements at virgin.net>
More information about the grass-dev
mailing list