I’m currently writing an article on the subject, and want to properly represent people’s views.

  • thingsiplay@beehaw.org
    link
    fedilink
    arrow-up
    6
    ·
    edit-2
    1 day ago

    (Edit: I always mix up the terms server side and client side decoration. Hopefully by my description its clear which one I’m referring to.)

    Pro SSD: the window manager should decide how the apps look

    • user: consistency across the operating system usage
    • dev: generalized and less burden on the dev, less dependencies to worry about and development specific to GNOME
    • both: flexible, change your window manager and the app changes without modifications (at least in ideal world)

    At least for a normal window. I wouldn’t mind if an application can request with a high priority that it wants to display its own decorations. In that case there should be an option to disable decorations from the window. That is how some applications do work and allows for a flexible usage based on users configuration. Now if there was just an official API from all window managers that can check this configuration, then the user wouldn’t even need or know there is a setting for.

    • Oinks@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      5
      ·
      edit-2
      1 day ago

      Now if there was just an official API from all window managers that can check this configuration

      This actually does exist. Reasonable Wayland Compositors will negotiate with their clients on whether they should use CSDs or SSDs. To an extent Qt does this: It prefers SSDs but it can draw CSDs if the compositor can’t draw SSDs (or signals that it doesn’t want to), which is why proper Qt apps are perfectly usable on GNOME Wayland despite missing SSDs.

      It would be possible to go even further and make apps that display menu and tool bars on compositors that prefer SSDs (like Plasma/KWin) and nice GTK-style decorations on others. It just happens that most apps either really want to draw their CSDs (mostly because they’re made for GNOME, a.k.a. anything using Libadwaita) or they don’t really have a use for them (like regular Qt apps).

      • thingsiplay@beehaw.org
        link
        fedilink
        arrow-up
        2
        ·
        1 day ago

        Warning! The protocol described in this file is experimental

        Nice, I didn’t know about that. But the problem with Wayland is like always it takes too long. That’s why nobody implements it.