Re: Proposal for ConfigureRequest handling
- From: Sasha Vasko <sasha aftercode net>
- To: Havoc Pennington <hp redhat com>, Ben Jansens <xor orodu net>
- Cc: Marko Macek <Marko Macek gmx net>, wm-spec-list gnome org
- Subject: Re: Proposal for ConfigureRequest handling
- Date: Fri, 30 Aug 2002 02:50:24 -0500
On Sunday 25 August 2002 12:21, Havoc Pennington wrote:
> Ben Jansens <xor orodu net> writes:
> > So what does everyone think of the offset property? Anyone know any
> > other way to provide for an accurate placement including decorations?
>
> I think it might be nicer (less race-condition-prone and less complex
> code on the client side) if there were a way to basically send a
> configure request that includes a gravity intended to override the
> normal gravity.
>
> Maybe we could pack this into a client message:
>
> type = _NET_MOVERESIZE_REQUEST
> l[0] = gravity
> l[1] = x
> l[2] = y
> l[3] = width;
> l[4] = height;
That is probably the only sane solution to the problem. In fact that is
exactly how AfterStep modules do that - only using its internal messaging
protocol. I thought that fvwm does that too ?
Thing is that offset/frame size property is evil, as it creates illusion of
possibility of positioning windows precisely. Most likely outcome of this
will be attempts by application to correct its window position in responce to
WM actions, and we definately don't want to see that.
Difficulties will also arise from the fact that size of decorations may
dramatically change during lifetime of the window, and as the matter of fact
size of decorations may change as the result of ConfigureWindow request by
client, which may easily trigger race condition.
Needless to say that concept of frame decorations is not applicable to all of
window managers.
On the part of application, the most reasonable approach would be to properly
use gravity and then let window manager handle actuall placement. The only
time when legit exact placement is required, is probably when pager attempts
to move window in responce to user action. And for such purpose above message
will be perfect.
AS the last note need I remind you, that ICCCM clearly states that clients
should not require any specific position for itself, and relying on such
specific position is even greater NONO.
>
> Or something like that. probably want a way to do only w/h without x/y
> and vice versa.
>
> Then all the pager has to do is send such a client message, with
> gravity set to StaticGravity or whatever, and the pager doesn't have
> to contain any gravity calculations, or worry about the value of a
> property on the client window.
> Havoc
Sasha
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]