Re: Various comments, mostly on Implementation Notes



Tim Janik <timj@gtk.org> writes:

> > Window Movement
> > ===============
> > 
> > Window manager implementors should refer to the ICCCM for definitive
> > specifications of how to handle MapRequest and ConfigureNotify events.
> > However, since these aspects of the ICCCM are easily misread, this
> > document offers the following clarifications:
> > 
> >  - Window managers MUST honour the win_gravity field of WM_NORMAL_HINTS
> >    for both MapRequest _and_ ConfigureNotify events [1]
> > 
> >  - Applications are free to change their win_gravity setting at any time
> > 
> >  - When generating synthetic ConfigureNotify events, the position given
> >    MUST be the top-left corner of the client window in relation to the
> >    origin of the root window (i.e., ignoring win_gravity) [2]
> > 
> > [1] ICCCM Version 2.0, 4.1.2.3 and 4.1.5
> > [2] ICCCM Version 2.0, 4.2.3
> > 
> > 
> > These are the things I was confused about, anyway; does anything else
> > need to be added?
> 
> well, that cares of the response, but what exactly happens if
> an app (r third party app like a pager) issues XMoveWindow (w, x, y);
> does w end up at x,y or does it's frame end up at x,y. that's the
> one thing i want certainty about ;)

You need to check WM_NORMAL_HINTS on the window. If the gravity
field has its default value, NorthWest, then the frame ends up
at x,y.

The window manager has no way of knowing which client requested
the move, so the effects of a pager configuring a window are exactly
the same as that of the application configuring the window 
itself.

Regards,
                                        Owen





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