Changes to multiwindow mode and always-on-top (ping Takuma)

Takuma Murakami takuma@dgp.ne.jp
Thu Mar 25 14:17:00 GMT 2004


Earle,

>  > > At 07:56 PM 3/20/2004 +0900, Takuma Murakami wrote:
> > > >> You give me a good insight to improve Z order handling.
> > > >> I believe we can approach to better solutions.  The attached
> > > >> is my latest code which should fix all problems on restacking
> > > >> and a-o-t windows without using fAlwaysOnTop flag.  Could you
> > > >> try and review this?
> 
> After 48 hours of continuous running in a mixed environment of both
> X and Windows apps I haven't noticed any problems at all, and I've seen
> from the logfile that the fRestacking flag has captured and killed
> some recursive restacks as expected from looking at your code.

Thank you very much for the hard test, I cleaned the code and
commited it.  I'm glad to see the result of our cooperative
development.

> The only glitch I have seen, and this is NOT new, is that when the
> Win32 Z order changes because of a right-click system menu or a
> click-and-drag to move a window, the X window is only restacked
> at the end of the menu or move operation.

I'm also aware of this bug but I won't fix it for now.

As a note for the commit, I just commented out your code on
PreserveWin32Stack() by '#if 0' because it is nice for use
from wm thread.  We can utilize it in the future.

There are still some possibilities to optimization, one of
which is the performance of winReorderWindowsMultiWindow()
as you pointed out before.  However more optimizations need
detailed examination into DIX code (to understand X's Restack
operation) despite relatively little speed-up.  So I finish
the series of my optimizations to -multiwindow mode.
Of course any enhancement is welcome.

Takuma Murakami



More information about the Cygwin-xfree mailing list