The gtk3-nocsd package improves the usability of GTK programs with client-side decorations by having KWin render a titlebar and shadow for them, and transforming the headerbar into a toolbar right below the titlebar. The effect is vastly superior to the way GTK apps using CSDs appear normally in Plasma (no window shadow, no inactive window state, square corners, can't close if unresponsive).
Description
Related Objects
It seems to be packaged and is being sync'ed from Debian, please see https://launchpad.net/ubuntu/+source/gtk3-nocsd
Can you maybe explain or point me in the direct of some documentation as to why someone would what this installed?
If it does what ngraham says it does, and it is small, of course we should include it.
Basically it makes GTK-based apps with client-side decorations not look and feel terrible when run under KWin in Plasma.
There's some basic documentation at https://github.com/PCMan/gtk3-nocsd, and there's also a set of screenshots there showing the effect on Gedit in XFCE with Xwfm. The effect is much more pronounced in KWin, as KWin deliberately does not implement the hacks required to make CSD-decorated windows look good, so they look terrible.
For example, here is GNOME's Dconf editor without this package installed:
There is no window border shadow, the corners are square, the appearance doesn't change at all when it's inactive, the close button doesn't work if it hangs, and the buttons do not follow what Breeze sets.
And here's how the same program looks with the package installed:
Much better, IMHO. It actually looks and behaves mostly proper in a KWin+Plasma environment.
If you read through the bugs I've linked to above, as well as the umbrella bug, you'll see that the correct way to implement this has become somewhat of a holy war, with the GTK folks insisting that all window managers adopt how they've specified it, and KWin's artin Flöser arguing (unsuccessfully) that there should be and should have been some kind of standard spec. This disagreement seems unlikely to ever be resolved, and so it is now up to distros and users to improve the user experience of CSD-decorated GTK apps run under KWin.
Ok, so the iso was generated last night and now contains gtk3-nocsd
http://cdimage.ubuntu.com/kubuntu/daily-live/current/
Please test this.
Tested. It works great! There's one tweak we should make to further improve the UI and make them look really natural: https://phabricator.kde.org/T6823
Also, while testing, I found a typo in the installer: https://phabricator.kde.org/T6822
It's not actually a second title bar, it just looks like one. Either way, that that regression will be resolved with https://phabricator.kde.org/T6823
Or we can just revert the whole thing, which would be a shame.
I appreciate how you feel, but honestly seems like we are contemplating layering one not really great hack on top of another, to try to fix issues caused by the 1st, and not achieving a really better result, and regressing wider KDE apps integration with the breeze look and feel.
Real issue seems to be the way Kwin deals with CSD apps, and the real fix lies somewhere there if KDE feels inclined.
So I am +1 for reverting this and returning to the status quo, imperfect as that was for a small selection of apps that we don't support.
I can respect that decision, but I disagree that we're not achieving a better result. GTK apps not looking and working right in KDE is a really common complaint. It's GTK's fault, but that doesn't preclude us from fixing it as much as we can. Isn't that what distros are for?
The problem is that this will never be resolved programmatically. I've read through all the mailing list threads and bug reports. There is a philosophical difference between the GTK and KWin folks, and neither side is willing to budge. There is simply a 0% chance of the problem going away via software changes. If there's to be any improvement in the state of affairs, it's up to users to fix it themselves (really bad user experience) or distros to pre-package hacky fixes, which is what we're attempting to do here.
Change in seed and meta now reverted.
If the Breeze GTK theme (which we want to keep), Kwin, or GTK get some love to fix the border issue in CSD apps, then perhaps this can be revived.