[patch] KWindowSystem on Windows

Lubos Lunak l.lunak at suse.cz
Sun Mar 2 20:50:29 GMT 2008

On ne 2. března 2008, Jarosław Staniek wrote:
> For review.
> Addes some implementation of KWindowSystem::setState()
> KWindowSystem::clearState() and some notes on possible future improvements.

 Please see 
http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#id2511406 for a 
description of what those flags are supposed to do exactly.

> This makes KNotes nicely stay-on-top almost with no #ifdefs./
> affected setState() behaviour:
> NET::Max now shows the window with SW_SHOWMAXIMIZED flag,

 NET::Max == ( Net::MaxVert | NET::MaxHoriz ) , therefore if you first check 
for NET::Max, it's never going to check the other two. Since Windows has no 
partial maximization AFAIK, you could probably treat it as either of them 
being set meaning full maximization.

> NET::Hidden hides the window

 This is an internal flag, used only by the window manager. Make it a no-op.

> NET::FullScreen resizes the window tothe size of the screen

 NET::FullScreen is not a plain resize to the screen size. It is a flag to 
tell the WM to do so temporarily and to do other relevant handling. 
Specifically, in your case, setting and resetting the flag is meant to 
restore the original geometry.

> NET::KeepBelow calls KWindowSystem::lowerWindow()

 As the name says, the flag is meant to keep it down there, not just move it. 
I guess you can't do that on Windows? It's a question whether it's better to 
lower the window or do nothing in such case then.

Lubos Lunak
KDE developer
SUSE LINUX, s.r.o.   e-mail: l.lunak at suse.cz , l.lunak at kde.org
Lihovarska 1060/12   tel: +420 284 028 972
190 00 Prague 9      fax: +420 284 028 951
Czech Republic       http//www.suse.cz

More information about the kde-core-devel mailing list