You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit c38b73e
Browse filesBrowse the repository at this point in the historyBrowse files
Window::GetOcclusionState() returns WindowOcclusionState Unknown, Visible
or Occluded, IsOcclusionStateSupported() says whether anything but Unknown
is reported, and WindowOcclusionChangedEvent carries each change after a
window's first reading, on the Window and on WindowManager.
- macOS: NSWindow.occlusionState and its change notification.
- Windows: hidden, minimized and cloaked windows are occluded; otherwise the
opaque windows above it in the Z order, clipped to the screens, must cover
it entirely (click-through and translucent layered windows do not).
System-wide WinEvents (show/hide/reorder, location, cloak, minimize,
foreground) arm a 100 ms timer that recomputes the process's windows, so
listeners never run inside another window's message handling.
- Linux: hidden and minimized windows are occluded; a shown window is
Unknown, since X11 visibility is meaningless under a compositing manager
(GDK reports one even on Xvfb + Openbox) and Wayland does not tell.
- Android, iOS, OpenHarmony: Unknown.
tests/window_occlusion_test shows real windows, so it is run by hand.
window_property_changed_test gets a longer CTest timeout: GTK start-up and
the keep-above probe take up to 20 s on WSL.
0 commit comments