1
0
Fork 0
mirror of https://github.com/gwm17/glfw.git synced 2024-11-26 20:28:49 -05:00

Wayland: Gather framebuffer transparency logic

This commit is contained in:
Camilla Löwy 2021-12-27 18:13:51 +01:00
parent a3d1633e1d
commit 7bede13b1d

View File

@ -616,7 +616,8 @@ static GLFWbool createXdgSurface(_GLFWwindow* window)
} }
static GLFWbool createSurface(_GLFWwindow* window, static GLFWbool createSurface(_GLFWwindow* window,
const _GLFWwndconfig* wndconfig) const _GLFWwndconfig* wndconfig,
const _GLFWfbconfig* fbconfig)
{ {
window->wl.surface = wl_compositor_create_surface(_glfw.wl.compositor); window->wl.surface = wl_compositor_create_surface(_glfw.wl.compositor);
if (!window->wl.surface) if (!window->wl.surface)
@ -638,6 +639,7 @@ static GLFWbool createSurface(_GLFWwindow* window,
window->wl.height = wndconfig->height; window->wl.height = wndconfig->height;
window->wl.scale = 1; window->wl.scale = 1;
window->wl.transparent = fbconfig->transparent;
if (!window->wl.transparent) if (!window->wl.transparent)
setOpaqueRegion(window); setOpaqueRegion(window);
@ -781,9 +783,7 @@ int _glfwCreateWindowWayland(_GLFWwindow* window,
const _GLFWctxconfig* ctxconfig, const _GLFWctxconfig* ctxconfig,
const _GLFWfbconfig* fbconfig) const _GLFWfbconfig* fbconfig)
{ {
window->wl.transparent = fbconfig->transparent; if (!createSurface(window, wndconfig, fbconfig))
if (!createSurface(window, wndconfig))
return GLFW_FALSE; return GLFW_FALSE;
if (ctxconfig->client != GLFW_NO_API) if (ctxconfig->client != GLFW_NO_API)