[PATCH] xdg-shell - yet another proposal (this time for real).

Bill Spitzak spitzak at gmail.com
Thu Nov 14 12:18:45 PST 2013

Any proposal must merge in the fullscreen/maximized stuff which is 
really an instruction to remove decorations as well.

I see no reason for clients to request whether they "prefer" csd. CSD 
will always be better, the only reason to "prefer" ssd is because the 
client can't do it, and you already stated that a client that can't draw 
it's decorations is not allowed.

However the compositor must be able to tell the client to not add it's 
decorations. This is used for:

- fullscreen
- maximized
- snapping against output edges, other windows, or panels
- remote display on a non-wayland system that insists on adding frames
- tabbed or tiled window management.

I propose that the xdg_shell configure request replace the current 
"fullscreen" and "maximized" with bitflags, and some of them are:

- Draw the top edge
- Draw the bottom edge
- Draw the right edge
- Draw the left edge
- Draw the titlebar

Possibly these bits should be inverted so that zero is the "normal" case 
where things are drawn. "snapping" will probably also require the 
compositor to know how thick the edges are, that may have to be sent 
from the client as another content rectangle.

Axel Davy wrote:
> Hello,
> There has been some discussions on IRC about the possible support of
> decoration side negociation in xdg_shell.
> A client would have to support CSD if it uses xdg_shell.

More information about the wayland-devel mailing list