Re: Still need a hint for undecorated windows
- From: Bill Haneman <Bill Haneman Sun COM>
- To: Havoc Pennington <hp redhat com>
- Cc: Owen Taylor <otaylor redhat com>, wm-spec-list gnome org
- Subject: Re: Still need a hint for undecorated windows
- Date: Fri, 01 Jul 2005 11:15:32 +0100
Havoc Pennington wrote:
On Tue, 2005-06-28 at 17:47 +0100, Bill Haneman wrote:
TYPE_TOP would not be a type, it would be a state. </nitpick>
If you want a type it would probably be TYPE_ONSCREEN_KEYBOARD
But since it would be the same behavior as required for a magnifier,
this doesn't seem right to me. The desired behavior is not exclusive to
OSKs.
The desired *stacking behavior* yes, but there are lots of other
behaviors. I'd expect desirable focus behavior could be different for a
magnifier vs. OSK for example, though I don't know.
At the moment, the desired focus behavior is the same too, and for the
cases I can currently anticipate that need this "type", I think
never-take-focus is correct. The properties could be described as "stay
in the topmost layer always, and don't take focus". That's why I
suggested "OVERLAY" because I think that noun roughly describes those
semantics. Another implied behavior of "don't take focus" may be that,
if such a TYPE is decorated at all, it probably should not be decorated
in the "normal" way, e.g. in most cases titlebars, close boxes, and the
like are undesirable.
Maybe these two things are the same type but "same stacking behavior"
isn't enough to make them the same. We need to be able to articulate
what property they have in common that will imply the same focus
behavior, same placement policy, same (non)decorations, etc.
If we can articulate that property, it's probably the name of the
_NET_WM_TYPE. If we can't, they are probably separate types.
The missing thing in my mind is really documenting how these AT windows
should be treated in all the places that the WM currently pays attention
to window type.
To give you an idea, according to a quick metacity grep the type
currently affects:
- placement and size constraints
- whether focus clicks are "eaten" in application-based mode
- whether an EnterNotify focuses the window in mouse focus mode
- whether EnterNotify raises the window in mouse focus mode
- whether clicking focuses the window
- whether the window has keybindings
- details of the placement algorithm
- window decoration style
- default focus window
- window stacking order in various ways
- show desktop mode behavior
- behavior with respect to workspaces
- configure request honoring
- available menu operations on the window
Most of these are about the DOCK, DESKTOP, or DIALOG types. But just to
give an idea how much the window types are _not_ just about stacking
order.
If there are any unique behaviors for the AT windows, then we'd probably
add those behaviors to the above list.
Okay, when I get back from vacation in a couple of weeks, I'll try to
write up a short desription of the desired behaviors that these "AT"
windows will have in common, using the list you provided above. It
looks like a good starting point.
Thanks for helping to define the issue(s) more clearly!
Bill
I agree about the REALLY_ON_TOP, i.e. if non assistive technologies
start using it the whole thing falls apart. But that's the current
problem with making 'on top' a 'state', IIRC. We need a TYPE because
types map to "layers", don't they?
No, layers are an orthogonal concept. Sometimes types imply things about
layers, but only because of the specifics of a type such as DOCK.
There's no inherent connection.
What's wrong with TYPE_OVERLAY (provided we document the fact that it's
needed by onscreen keyboards, magnifiers, and other assistive
technologies that need never to be obscured by other windows) ?
Because we don't know what else to do with TYPE_OVERLAY.
What we need to know is how these windows should work on all the many
dimensions I just mentioned, not only stacking order.
Havoc
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]