Skip to content

Xwayland: Do not map the COW by default when rootless

The composite overlay window (COW) can be queried from any X11 client, not just the X11 compositing manager.

If a client tries to get the composite overlay window, the Xserver will map the window and which will receive all pointer events (the window being mapped and on top of the stack).

To avoid that issue, unmark the composite overlay window as mapped once realized when Xwayland is running rootless.

Note: All Xservers are actually affected by this issue, but with most regular X servers, the compositing manager will take care of dealing with the composite overlay window, and X11 clients using GetOverWindow() won't break pointer inputs for all X11 clients. Wayland compositors however usually run Xwayland rootless and have no use for the COW.

Basically the same as !877 (closed) for Xwayland rootless only.

Edited by Olivier Fourdan

Merge request reports