Re: base size and resize increment window manager attributes
- From: Matthias Clasen <maclas gmx de>
- To: wm-spec-list gnome org
- Cc: Neil Zanella <nzanella cs mun ca>
- Subject: Re: base size and resize increment window manager attributes
- Date: Wed, 26 Jun 2002 09:49:57 +0200 (MEST)
> Here is one simple thing
> which should probably be part of the standard:
>
> +++ Each window must have an interior with a height of at least 1 pixel
> +++ and a width of at least one pixel.
>
This is already enforced by the X protocol.
> Another requirement should be:
>
> +++ The size increment should be always greater than 1.
> +++ Setting the size increment to a smaller amount is implementation
> +++ defined, i.e., should be avoided.
Well, its all only hints anyway, the clients should still try to work with
the window size the wm gave them. But in this particular case, I don't
see any problem with a size increment of 0. The ICCCM says:
The base_width and base_height elements in conjunction with width_inc and
height_inc define an arithmetic progression of preferred window widths and
heights for nonnegative integers i and j:
width = base_width + (i × width_inc)
height = base_height + (j × height_inc)
If one of width_inc or height_inc are 0, you get a sequence of preferred
sizes instead
of a grid, if both are 0, you get a single preferred size, namely the base
size. This seems
to enlarge the expressive power of this hint without causing any problems...
> +++ The size of a window SHOLD be computed as follows:
>
> Let k be some scalar factor.
>
> s = baseSize + k * sizeIncrement;
> if (s == 0) size = 1;
> else size = baseSize + k * sizeIncrement;
>
Don't forget the min and max size hints. I think it is pretty clear from
ICCCM 4.1.2.3 that a baseSize smaller than minSize is allowed.
> Under the gnome, since the base size is (0, 0), gnome automatically
> bumps it to (1, 1) which means that the size computations above
> yield sizes of (1, 1), (3, 3), (5, 5), ...
> which is not what the user expected.
You have to be more specific here. "gnome" is not a window manager.
The behaviour you describe would be a bug of the wm you're running
gnome with.
> These things need to be sorted out and standardized because
> it can really mess things up for larger applications and we
> all need something to rely on.
I think the ICCCM is completely precise in this area. If anything, section
4.1.2.3
could contain a hint to watch out for division by zero when checking the
aspect ratio, since requested size - baseSize might be zero.
Matthias
--
GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]