Package limn.backend
package limn.backend
The service-provider interface a native platform implements:
Backend
runs the event loop and creates NativeWindows. Beside it sit the
contracts a platform must supply: the GpuRenderer widgets draw
through, WindowInput, Clipboard,
Cursors, FileDialogs and
Crashes reporting. Come here to write a backend, or to see exactly
what one owes the toolkit; an application constructs one at startup and otherwise
programs against the modules above, which never name a windowing library.-
ClassDescriptionService-provider interface for a native platform backend (windows, input, GPU rendering, clipboard).Handle to an in-scene modal (see
Backend.pushSceneModal(limn.backend.NativeWindow, boolean));Backend.SceneModalHandle.release()it on close.System clipboard (UTF-8 text).Crash containment registry: one process-wideCrashHandler(default: log and continue) that the toolkit and backend notify whenever application code throws inside the event loop.Unwinds the event loop when aCrashHandlerreturnedfalse; containment sites let it pass through instead of re-dispatching, so the handler sees each crash once.Application hook for crashes the toolkit caught in the event loop.Where application code was executing when a contained crash was caught.A standard mouse-cursor shape a widget can request while hovered: the OS's native pointer, so it looks and feels exactly like every other application.A monitor/screen, normalized so every part of the toolkit reads display information the same way instead of each class poking at the platform: its identity (Display.id()/Display.name()), the mode currently set (Display.currentResolution()), all supported modes (Display.availableResolutions()), the physicalDisplay.bounds(), the usableDisplay.workArea()(minus taskbar/dock), and the DPIDisplay.contentScale().Native system file/folder dialogs, obtained viaBackend.fileDialogs().A file-name filter: a human-readable description plus glob patterns, e.g.Renders one frame of a window.Immutable per-frame metrics handed to aFrameCallback.GPU rendering entry point for one window.Which graphics context a backend actually obtained, and which of the optional capabilities the toolkit uses are present on it.A top-level native window.Notified when the window moves to a monitor with a different content scale.What a registered child window is, which decides whether a modal over the owner leaves it usable.How the window treats the mouse pointer: visibility and capture.A snapshot of GPU resources the renderer is holding: currently the number of GL textures resident (glyph-atlas pages + cached image textures) and their estimated size in bytes.An immutable screen mode: a pixel size and refresh rate.Initial configuration for aNativeWindow.Receives a window's translated native input on the UI thread, in logical points.Visual framing of a window.