Re: Various comments, mostly on Implementation Notes


I fixed both kwin and Qt (2.2) to do ICCCM compliant positioning.  Let's see
who will complain :)

> (Perhaps we should also think about the fact that the ICCCM does not
> expose any way of determining what the current location of a window
> is in a way that could be saved and then later used for a newly
> mapped window to restore the same position. 
> The way that GTK+ does this now is to crawl up window hierarchy to one
> window before the (pseudo-)root window and assume that that window
> corresponds to the window manager decorations. Which may be
> somewhat less than robust.)

This is why we added that frame-geometry thing in the NET_WM hints.
The crawling up isn't too bad (I did that once in Qt), but it's pretty
expensive (round-trip wise). I will add this again in Qt-3.0 on demand, whenever
somebody really needs the frame geometry (without breaking binary
compatibility, I could only do it on ReparentNotify in Qt-2.x ).

What we are currently doing, is to guess from the information we get in
ReparentNotify and under certain circumstances looking at the window parent. 
This lets us more or less safely discover most single and double reparenting
window managers. It's ugly, though.


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