primaryDisplay
- Returns:
- the primary
Display, ornullwhen headless. Default: the display that reportsDisplay.isPrimary(), else the first ofdisplays(). UI thread only.
AutoCloseableLwjglBackendlimn-backend-lwjgl (GLFW + OpenGL 3.3 core); the abstraction
exists so ANGLE/Vulkan (or SDL) backends can replace it without touching
any module above.
Lifecycle: construct on the process main thread (which becomes the UI
thread), create windows, then runEventLoop() until the last window
closes or stop() is called. The loop is event-driven: it sleeps in
the native event wait and is woken by input, window damage or
Ui.post(java.lang.Runnable).
static interface pushSceneModal(limn.backend.NativeWindow, boolean)); Backend.SceneModalHandle.release() it on close.voidclose()createWindow(WindowConfig config) displays()default FileDialogsdefault GraphicsInfovoidpopModal(NativeWindow modal) modal from the modal stack, releasing what it locked.default DisplayvoidpushModal(NativeWindow modal,
NativeWindow parent) modal as an active modal window and pushes it on the
modal stack.pushSceneModal(NativeWindow owner,
boolean toolkitScope) owner.default Render3DStatsdefault RenderStatsvoidvoidvoidstop()stop() is invoked.modal as an active modal window and pushes it on the
modal stack. Only the topmost modal receives input; every window it
locks ignores input until it closes.
Modality scope: a non-null parent makes it window-modal,
so it locks only parent (and parent's owned popups),
leaving unrelated windows interactive. A null parent makes it
toolkit-modal, so it locks every other window. Modals stack: with
several open, only the top one is usable and the non-modal windows are
released only after the whole modal stack closes. UI thread only.
modal from the modal stack, releasing what it locked. UI thread only.owner.
Unlike pushModal(limn.backend.NativeWindow, limn.backend.NativeWindow), there is no separate modal window: the overlay
blocks owner's own content, so owner stays interactive,
while this call blocks the same sibling windows a native modal
would. toolkitScope true locks every other window;
false locks only owner's owned popups. Release the
returned handle when the overlay closes. UI thread only.RenderStats.EMPTY.
UI thread only.Render3DStats.EMPTY.
UI thread only.createWindow(limn.backend.WindowConfig) has succeeded at least once; before that,
and on a machine where it never does, the result carries the
windowing platform and a GraphicsInfo.failure() instead.
Default: GraphicsInfo.NONE. UI thread only.Display, in the platform's order (index 0
is usually the primary). Empty when headless/embedded. UI thread only.Display, or null when headless.
Default: the display that reports Display.isPrimary(), else
the first of displays(). UI thread only.FileDialogs.NONE (every dialog resolves
empty, as if cancelled). UI thread only.close in interface AutoCloseable