feat(overlay): X11 layer support via _NET_WM_STATE_ABOVE #23
Labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
elegos/linux-hello#23
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
On X11, winit creates a standard window positioned by the window manager — no guarantee it appears above the DM session.
Proposed approach
Add an X11 path (separate
x11_platform.rs) that:DISPLAYenv var (and absence ofWAYLAND_DISPLAY).x11rborxcbto create a window with:_NET_WM_STATE_ABOVEfor always-on-top_NET_WM_WINDOW_TYPE_NOTIFICATIONor_NET_WM_WINDOW_TYPE_DIALOGoverride_redirect = 1(optional, more aggressive for DM use)MinimalSoftwareWindow+ software renderer (same as Wayland path).Notes
DISPLAYis set andWAYLAND_DISPLAYis unset._NET_WM_STATE_ABOVEdifferently;override_redirectis more reliable for DM use but bypasses compositing.Feature flag
Add a
x11feature tolinux-hello-overlay, disabled by default, following the same pattern as the existingwaylandfeature.