CuarzoSoftware / Louvre

C++ library for building Wayland compositors.
MIT License
493 stars 13 forks source link

GTK doesn't support `xdg_decoration_unstable_v1` but does support `org_kde_kwin_server_decoration_manager` #52

Open Fox2Code opened 3 months ago

Fox2Code commented 3 months ago

This is very silly, GTK support KDE protocol for decoration, but not the XDG one.

Relevant code: https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gdk/wayland/gdkdisplay-wayland.c Searching for xdg_decoration in the entire project result in nothing Checking for org_kde_kwin_server_decoration_manager gives multiple results

Relevant protocols:

Since Louvre already support xdg_decoration_unstable_v1, supporting org_kde_kwin_server_decoration_manager as well shouldn't be much an issue as they are almost identical protocols.

ehopperdietzel commented 3 months ago

It seems like it is deprecated and XDG Decoration should be preferred.

Wayland KDE Server Decoration Protocol

There have been discussions about replacing it in GTK.

GTK Merge Request

So I think it's a better idea to wait for GTK to support XDG decoration.

Fox2Code commented 3 months ago

@ehopperdietzel It may take literal years for this GTK MR to be included, and since the KDE Decoration protocol is deprecated, it is not longer subject to change, on the other hand I don't know if there is many GTK apps that uses server side decorations, as Gnome is popularly known to be against server side decorations.

ehopperdietzel commented 3 months ago

I am going to consider it, but to be honest, I don't like the idea of adding two protocols for the same purpose, and even worse if one of those is deprecated. Anyway, GTK has a very robust theming system for CSD, which even allows applying border masks for round corners and such. So, in the meantime, that could be used.

Fox2Code commented 1 month ago

It's been 3 months and nothing productive is happening, I think the best is to ignore GTK.

LinuxMint (Peoples that make Cinnamon) started doing xapps because Gnome keep being annoying.

Maybe I'll should get a look at xapps to see if I can find something interesting there for Louvre.

ehopperdietzel commented 1 month ago

I'll take a look to the KDE protocol, maybe I can add it without problems.

Fox2Code commented 1 month ago

New GTK MR: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/6398

ehopperdietzel commented 1 month ago

Nice, let's wait a few more years! 😄