[shell-coding] Re: owner/owned zorder

On Thu, 29 May 2003 20:14:13 +0200 "xnowfall" <xnowfall@xxxxxxxxxxxx>
writes:
> > On Thu, 29 May 2003 16:42:07 +0200 "xnowfall" 
> <xnowfall@xxxxxxxxxxxx>
> > writes:
> > > litestep's main window isn't owned or parented to anything,
> > > but modules like desktop2, label and layercuts are owned by
> > > it.
> >
> > Is there any reason to do that?
> >
> > If having the windows owned by the litestep window causes
> > the problem, why not just avoid setting the owner?
> 
> don't know if that's why it was originally added, but unowned 
> topmost windows with a caption show up in the taskmanager

Ah, I see.  I always solved that by not setting a caption, which I
imagine would work in most cases.  (although it might be appropriate to
use it for label, but I don't know)

> > >  - the litestep window should possibly use something like
> > > (((WINDOWPOS *)lParam)->flags |= SWP_NOSIZE | SWP_NOMOVE
> > > | SWP_NOZORDER | SWP_NOOWNERZORDER) for WM_WINDOWPOSCHANGING.
> > > this to let it protect the zorder itself in case some modules
> > > don't follow the rules above
> >
> > The litestep window should probably be created with
> > HWND_MESSAGE, which would avoid zorder all together
> > (on systems where it's supported)
> 
> it couldn't then be the owner of labels/layercuts etc without
> them becomming message windows too though, right?

Yeah probably, compatibility vs correctness.  :/

Intercepting WM_WINDOWPOSCHANGING always seemed inelegant to me. 
Sometimes it's necessary, but I would prefer to avoid it where it isn't.

Failing that, the litestep window should be always on top and the desktop
window should not be owned by it.  On-bottom windows are children of the
desktop and won't show up in the task list anyway.  (how do owner and
parent interact with zorder?)

-rabidcow


   

________________________________________________________________
The best thing to hit the internet in years - Juno SpeedBand!
Surf the web up to FIVE TIMES FASTER!
Only $14.95/ month - visit www.juno.com to sign up today!

__________________________________________________
Subscription options and archive:
http://www.freelists.org/list/shell-coding

Other related posts: