Hello everyone,
One thing that GNUstep is not that great about is desktop integration;
there are all sorts of things that X11 and Wayland users like to
customize on their desktops, such as themes, scrollbar behavior,
titlebar button positions, etc. The ways to integrate with X11/Wayland
desktops is mostly undocumented, and I think it would be a good idea to
document the steps we need to take in order to integrate with desktops
before integrating with them.
The documentation I am writing is available here:
https://ethanc8.github.io/desktop-integration-x11-wayland/index.html. If
you'd like to contribute, please send pull requests on GitHub
<https://github.com/ethanc8/desktop-integration-x11-wayland>.
I'd also like to get some of the larger players to contribute to their
documentation and make sure we don't get anything wrong, so if you know
Gtk developers or KDE developers it'd be helpful if you could point them
to this documentation.
A very useful resource is the source code for kde-gtk-config:
https://github.com/KDE/kde-gtk-config/blob/master/kded/gtkconfig.cpp.
I expect this to not only be useful for us, but also for the developers
of the many other toolkits targeting X11 and Wayland, for application
developers, and for those trying to develop desktop environments (such
as the GNUstep-based desktops) who want to integrate existing Gtk and Qt
apps into their desktop.
Thanks,
Ethan C