Wayland: Gather framebuffer transparency logic

(cherry picked from commit 7bede13b1d)
This commit is contained in:
Camilla Löwy 2021-12-27 18:13:51 +01:00
parent fba79aaaec
commit ed785a2c79

View File

@ -732,7 +732,8 @@ static GLFWbool createXdgSurface(_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);
if (!window->wl.surface)
@ -754,6 +755,7 @@ static GLFWbool createSurface(_GLFWwindow* window,
window->wl.height = wndconfig->height;
window->wl.scale = 1;
window->wl.transparent = fbconfig->transparent;
if (!window->wl.transparent)
setOpaqueRegion(window);
@ -919,9 +921,7 @@ int _glfwPlatformCreateWindow(_GLFWwindow* window,
const _GLFWctxconfig* ctxconfig,
const _GLFWfbconfig* fbconfig)
{
window->wl.transparent = fbconfig->transparent;
if (!createSurface(window, wndconfig))
if (!createSurface(window, wndconfig, fbconfig))
return GLFW_FALSE;
if (ctxconfig->client != GLFW_NO_API)