Re: "floating panel" window type



Lubos Lunak <l lunak sh cvut cz> writes:
> > I do think that a state might be nicer than a type, though, in that
> > you can change it without unmapping the window.
> 
>  And you can also set it for any window. E.g. if I want to see a movie or the 
> status of my PPP connection, I just set mplayer/kppp window to sticky and 
> on_top. Changing window type just because I want it to be kept in a certain 
> position for some time is weird.

Right.
 
> > Is it on top of panels? (maybe)
>  It's yes with KWin. If the user puts the window there, they probably want it 
> to be above the panel.

For me a fullscreen movie should be on top of panels, but maybe not
xmms/gkrellm (those are perhaps on the same layer as the panels?).
 
> > What about on
> > top of system-modal dialogs? (probably not) How about onscreen
> > keyboards? (definitely no)
> 
>  How exactly are these two described (i.e. window type, etc)? 
>

I'm not sure we have a way to do these yet. Onscreen keyboard needs to
be on top of _everything_, all the time - and has some other weird
behavior too. I had a long conversation with the GOK guys about this
and have taken no action to solve their problem, now you've reminded
me to feel guilty. ;-)

To make onscreen keyboards work, we probably need either a state 
_NET_WM_STATE_STAYS_ON_TOP_OF_ON_TOP ;-) or a new window type. 
_NET_WM_WINDOW_TYPE_ONSCREEN_KEYBOARD seems a bit specific so maybe
the state is right.

>  - it's undefined when there are two stays_on_top windows at the same position 
> (the WM should probably put more recently active windows above the less 
> recently active ones)
>  - not on top of all windows that are transient for it
>  - on top of all other windows, maybe except for some types (DIALOG, SPLASH, 
> MENU, TOOLBAR and FULLSCREEN ?)
> 
>  Hmm, even shorter that I expected. Does anybody see a problem with it?

I'd agree that a definition like this is about right. I wish we had
some more precise way to explain exactly what an "xmms/gkrellm-like
application" _is_, but ;-)

Havoc



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