Sway and client side decorations

Published 2018-01-27 on Drew DeVault's blog

You may have recently seen an article from GNOME on the subject of client side decorations (CSD) titled Introducing the CSD Initiative. It states some invalid assumptions which I want to clarify, and I want to tell you Sway’s stance on the subject. I also speak for the rest of the projects involved in wlroots on this matter, including Way Cooler, waymonad, and bspwc.

The subject of which party is responsible for window decorations on Wayland (the client or the server) has been a subject of much debate. I want to clarify that though GNOME may imply that a consensus has been reached, this is not the case. CSD have real problems that have long been waved away by its supporters:

  • No consistent look and feel between clients and GUI toolkits
  • Misbehaving clients cannot be moved, closed, minimized, etc
  • No opportunity for compositors to customize behavior (e.g. tabbed windows on Sway)

We are willing to cooperate on a compromise, but GNOME does not want to entertain the discussion and would rather push disingenuous propaganda for their cause. The topic of the #wayland channel on Freenode includes the statement “Please do not argue about server-side vs. client-side decorations. It’s settled and won’t change.” I have been banned from this channel for over a year because I persistently called for compromise.

GNOME’s statement that “[server-side decorations] do not (and will never) work on Wayland” is false. KDE and Sway have long agreed on the importance of these problems and have worked together on a solution. We have developed and implemented a Wayland protocol extension which allows the compositor and client to negotiate what kind of decorations each wishes to use. KDE, Sway, Way Cooler, waymonad, and bspwc are all committed to supporting server-side decorations on our compositors.


See also: Martin Flöser of KDE responds to GNOME’s article

Have a comment on one of my posts? Start a discussion in my public inbox by sending an email to ~sircmpwn/public-inbox@lists.sr.ht [mailing list etiquette]


Articles from blogs I follow around the net

Contributors Summit 2019

For the third year in a row, the Go team and contributors convened the day before GopherCon to discuss and plan for the future of the Go project. The event included self-organizing into breakout groups, a town-hall style discussion about the proposal process…

via The Go Programming Language Blog August 15, 2019

Updates in July 2019

This post gives an overview of the recent updates to the Writing an OS in Rust blog and the used libraries and tools. Since I'm still very busy with my master thesis, I haven't had the time to work on a new post. But there were quite a few maintena…

via Writing an OS in Rust August 2, 2019

What is RISC?

This is an archive of a series of comp.arch USENET posts by John Mashey in the early to mid 90s, on the defnition of reduced instruction set computer (RISC). Contrary to popular belief, RISC isn't about the number of instructions! This is archived her…

via Dan Luu July 29, 2019

Generated by openring