ValveSoftware / gamescope

SteamOS session compositing window manager
Other
3k stars 198 forks source link

Borderless Window option `-b` Does Not Work WIth Wayland Backend #1505

Open sonic2kk opened 1 week ago

sonic2kk commented 1 week ago

Tested individual commits f554d886093ad3fdc361b4642fe6cca4cdaa99b1 and d4ca0b979732ad6433fe4d0c4a29af7647777ae7, but did not bisect. Unsure if this is a regression or not. Tested on KDE Plasma Wayland 6.1.4.

The borderless window option -b does not work with the Wayland backend, which is selected by default on (compatible?) Wayland compositors. Forcing the backend to SDL with --backend=sdl displays a borderless window as expected.

Window decorations can be hid on KWin Wayland, so I don't think this is a Wayland limitation.

Example commands:

sonic2kk commented 1 week ago

Seems that libdecor_frame_set_visibility is not working as expected in WaylandBackend: https://github.com/ValveSoftware/gamescope/blob/d4ca0b979732ad6433fe4d0c4a29af7647777ae7/src/Backends/WaylandBackend.cpp#L949

Not sure why. All this is entirely out of my depth, just tested locally with some debug prints to make sure this was actually being called, and it is. When hardcoded to false the decorations still show.

sonic2kk commented 1 week ago

I guess this depends on https://gitlab.freedesktop.org/libdecor/libdecor/-/merge_requests/147