diff --git a/src/wl_platform.h b/src/wl_platform.h
index 1036fb5e..c0721e2b 100644
--- a/src/wl_platform.h
+++ b/src/wl_platform.h
@@ -234,6 +234,7 @@ typedef struct _GLFWwindowWayland
     GLFWbool                    visible;
     GLFWbool                    maximized;
     GLFWbool                    activated;
+    GLFWbool                    fullscreen;
     GLFWbool                    hovered;
     GLFWbool                    transparent;
     struct wl_surface*          surface;
diff --git a/src/wl_window.c b/src/wl_window.c
index f4c745ea..ef1ac584 100644
--- a/src/wl_window.c
+++ b/src/wl_window.c
@@ -522,8 +522,9 @@ static void xdgToplevelHandleConfigure(void* userData,
     else if (maximized && !window->wl.maximized)
         _glfwInputWindowMaximize(window, GLFW_TRUE);
 
-    window->wl.activated = activated;
-    window->wl.maximized = maximized;
+    window->wl.activated  = activated;
+    window->wl.maximized  = maximized;
+    window->wl.fullscreen = fullscreen;
 }
 
 static void xdgToplevelHandleClose(void* userData,