Xfce 4.16 will look a little different to long time users when it arrives later this year, as the popular desktop environment is adopting client side decoration by default.
But before you cry tears over the loss of traditional app menus I should stress that the plan is to go full CSD, not full GTK header. It’s a subtle sounding difference, but an important one.
Xfce 4.16 is switching to GTK header bars, but they’re more commonly referred to as client side decoration (CSD) as window borders are rendered client side (GTK), not by the window manager.
Xfce 4.16 and CSD
It stands to be a visually striking change for a desktop environment favoured for its conservative approach to user interfaces.
“One of the major UI changes that we announced for the 4.16 cycle was the switch to GtkHeaderBars or so-called Client-side decorations (CSD). The first big step in this direction has now happened in libxfce4ui, our main user interface library,” Simon Steinbeiss explains.
“With the change, almost all dialogs will be converted to using CSD by default without any code changes in existing projects.”
With Xfce now fully ported to GTK3 is was somewhat inevitable that some of GTK’s newer abilities and conventions would start to be adopted. While Xfce hasn’t decided to adopt GTK header bars in full, they are part of modern Linux software design.
The switch will mean that modern GTK themes, like Ubuntu’s Yaru and GNOME Shell’s Adwaita, look much nicer when run under Xfce — something that the following screenshot of the Xfce About dialog demonstrates:
But on the other hand it could mean the end of xfwm4 themes — which some may miss.
The benefits of switching to CSD for dialogs is rather clear: reduces wasted space and duplicate window titles, and helps standardise appearance/usage of Xfce dialogs across apps and plugins.
All in development
Word that Xfce is making major visual changes may sound scary but I have to stress this is all in development.
It’s not currently clear precisely how pervasive CSD will actually be in Xfce 4.16 by the time it arrives in mid June 2020.
The current plan is to use CSD for all ‘XfceTitledDialog’ windows (i.e. about dialogs, settings, etc) and introduce simple CSD window decoration around regular apps, like the lightweight file manager Thunar.
To be clear: most app menus would remain on show and accessible with CSD. The changes will only affect the “window” border containing “minimise, maximise, close” buttons.
That said, if the effort required isn’t too great, we may see Xfce redesign or tweak a few smaller apps to work better with CSD. This could potentially offer us a sneak peek to how the desktop will handle and approach the use of full CSD in future releases.