Wayland: Fix GLFW_DECORATED for XDG decorations

On a compositor that supports server-side decorations, they were always
enabled in windowed mode, even if GLFW_DECORATED was cleared.
This commit is contained in:
Camilla Löwy
2022-06-20 22:36:23 +02:00
parent 3203599cac
commit f35e2274cb
2 changed files with 11 additions and 3 deletions

View File

@@ -635,9 +635,15 @@ static GLFWbool createShellObjects(_GLFWwindow* window)
zxdg_toplevel_decoration_v1_add_listener(window->wl.xdg.decoration,
&xdgDecorationListener,
window);
zxdg_toplevel_decoration_v1_set_mode(
window->wl.xdg.decoration,
ZXDG_TOPLEVEL_DECORATION_V1_MODE_SERVER_SIDE);
uint32_t mode;
if (window->decorated)
mode = ZXDG_TOPLEVEL_DECORATION_V1_MODE_SERVER_SIDE;
else
mode = ZXDG_TOPLEVEL_DECORATION_V1_MODE_CLIENT_SIDE;
zxdg_toplevel_decoration_v1_set_mode(window->wl.xdg.decoration, mode);
}
else
createFallbackDecorations(window);