Add a note about wayland semantics

This commit is contained in:
Kovid Goyal 2022-11-01 07:58:34 +05:30
parent 00324c96fc
commit f6f2f00c53
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

6
glfw/wl_window.c vendored
View File

@ -588,6 +588,12 @@ static void xdgSurfaceHandleConfigure(void* data,
struct xdg_surface* surface,
uint32_t serial)
{
// The poorly documented pattern Wayland requires ack the configure,
// set the window geometry attach a new buffer of the correct size to the surface
// and only then commit the surface. buffer is attached only by eglSwapBuffers,
// so we set a flag to not commit the surface till the next swapbuffers. Note that
// wl_egl_window_resize() does not actually resize the buffer until the next draw call
// or buffer state query.
_GLFWwindow* window = data;
xdg_surface_ack_configure(surface, serial);
if (window->wl.pending_state & PENDING_STATE_TOPLEVEL) {