Window stacking

Michal Suchanek hramrach at centrum.cz
Wed Sep 14 04:39:28 PDT 2011


On 14 September 2011 13:18,  <dottomi at gmail.com> wrote:
>
>
>> all the windows displayed by the compositor are in a single list that
>> defines their stacking order
>
> Excuse me, I'm just a bystander, but is this list you speak of a list of
> all the windows registered by all of the connected clients?
>
> The main problem I have using GIMP is that when I focus a window, I
> don't want to focus on a /window/, I want to focus on an /application/.
> This means I want all of the application's windows to be moved to the
> top. If there is a list with only the windows, it would require to move
> all of the windows one by one. You can also have a third-party window
> between your application's windows, and I think that's the part that
> should be avoided.
>
>> 2. There is a *atomic* api by which a client can map, unmap, and
>> change the stacking order of it's own windows.
>
> "Of it's own windows" in an absolute list, or in a client-only list?
>
> Personally, I'd want to have a client request for a "single window
> object", and for a "window group object". In the server there would be a
> single list containing both single window objects and window group
> objects. A window group is an object which is managed by the client
> (map, unmap, register, unregister, reordering - i.e. what you're talking
> about here) and the client can only operate on windows in its own group
> object. It makes things easier in the server to restack windows because
> you can move a whole group at once in the server-side list and you avoid
> having a client's window positioned between windows of another client,
> where the latter client does not want any third-party windows between.
> It also makes it impossible for a client to make changes to the absolute
> server-side list.

Also the application can implement this as as single fullscreen window
with transparency which is what many Windows applications do. I think
that window group might be useful in some cases but in others the
application might want more control over its windows anyway and using
a transparent window might be the better option then.

Thanks

Michal


More information about the wayland-devel mailing list