git.lucas.co / cce-compositor
Wayland compositor (wlroots)
git clone https://git.lucas.co/cce-compositor.git

commit308f974ebbce50683f01a4bbf4ab3f89d9e7b023
parentce00030762
authorIsaac Freund <[email protected]>
date2026-02-26 16:34
Xwayland: ensure fullscreen_requested sent for new windows

Empirically, according to my friendly testers, doing this in create()
does not work/works with a several second delay. Doing this in
handleMap() seems to work well though.

 river/XwaylandWindow.zig | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/river/XwaylandWindow.zig b/river/XwaylandWindow.zig
index 1e17698..ce6a24b 100644
--- a/river/XwaylandWindow.zig
+++ b/river/XwaylandWindow.zig
@@ -204,6 +204,10 @@ pub fn handleMap(listener: *wl.Listener(void)) void {
         });
     }
 
+    if (xwindow.xsurface.fullscreen) {
+        window.wm_scheduled.fullscreen_requested = .{ .fullscreen = null };
+    }
+
     window.state = .initialized;
     window.map() catch {
         log.err("out of memory", .{});