[PATCH v2 1/2] shell & compositor: add parameters for set_fullsceen

Bill Spitzak spitzak at gmail.com
Thu Jan 12 13:22:15 PST 2012

Pekka Paalanen wrote:

> Ok, I'll rephrase what I really meant, just forgot to write a tiny
> subordinate clause in the above.
> When a fullscreen surface is raised topmost, it should be raised on top
> of panels. When some other surface is raised afterwards, the panels must
> be raised too, if the other surface is not fullscreen.
> Happy?


What I want is if an application has a control panel window atop it's 
main window, and you full-screen the main window, the control panel 
remains atop the fullscreen window, and does not (even temporarily) go 
below it.

This means that before raising the fullscreen window above the panel, 
this control panel must be raised first, and then the fullscreen window 
placed below it.

The best way I see to do this is to to not have the compositor reorder 
the window. Instead the client will raise it's control panel window, 
then raise the fullscreen window to be below it.

There may be other methods by which clients communicate a "stacking 
window graph" to the compositor. This has to be an arbitrary directed 
acyclic graph of windows and clients must be able to modify it 
synchronously with any changes to their state. Each edge in this graph 
will have to have information about what other windows may be inserted 
between this pair. IMHO this is much too complicated and does not fit 
with Wayland's design.

More information about the wayland-devel mailing list