Class X11MultiScreenFullscreen
Sends _NET_WM_FULLSCREEN_MONITORS to the X11 root window so that an EWMH-compliant
window manager treats the union of the specified Xinerama screens as a single fullscreen
surface, covering taskbar struts on all of them.
Usage: set WindowState.FullScreen first, then call TryApply(Window, IReadOnlyList<Screen>) in a
Dispatcher.UIThread.Post at DispatcherPriority.Render to ensure the WM has
processed the fullscreen state before the monitor-range message arrives.
Returns false (no-op) on any non-X11 platform or when Xinerama is unavailable.
public static class X11MultiScreenFullscreen
- Inheritance
-
X11MultiScreenFullscreen
- Inherited Members
Methods
IsX11(Window)
Returns true when window is running under X11.
Uses Avalonia's platform handle descriptor ("XID" = X Window ID) to detect X11.
Returns false on Wayland, Windows, macOS, or in headless contexts.
public static bool IsX11(Window window)
Parameters
windowWindow
Returns
TryApply(Window, IReadOnlyList<Screen>)
Sends _NET_WM_FULLSCREEN_MONITORS so the WM spans fullscreen across
every Xinerama screen that matches an entry in targetScreens.
Must be called after WindowState.FullScreen is set on the window.
public static bool TryApply(Window window, IReadOnlyList<Screen> targetScreens)
Parameters
windowWindowThe Avalonia window that is already in fullscreen state.
targetScreensIReadOnlyList<Screen>The Avalonia screens to span across.
Returns
- bool
trueon success;falseon non-X11 or missing Xinerama.