SceneManager class

Manages multiple visual layers in a terminal windowing system, handles rendering composition and hardware sync.

Implemented types

Constructors

SceneManager(Terminal terminal, {RenderingMode renderingMode = RenderingMode.inline})
Creates a new SceneManager attached to the given terminal.

Properties

enableMouseTracking ↔ bool
Whether mouse tracking is explicitly forced/enabled.
getter/setter pair
focusedLayer ↔ SceneLayer?
The currently focused layer, if any. Used to sync hardware state.
getter/setter pair
hashCode → int
The hash code for this object.
no setterinherited
layers ↔ List<SceneLayer>
The list of layers to composite and render.
latefinal
onFrameRedrawn ↔ void Function(Buffer buffer)?
Optional callback invoked whenever a composited frame is completely rendered.
getter/setter pair
onKeyEvent ↔ bool Function(KeyEvent event)?
Optional callback to intercept key events before they are routed to the focused layer. If this returns true, the event is consumed and not propagated.
getter/setter pair
renderer → Renderer?
Exposes the internal renderer.
no setter
renderingMode → RenderingMode
The rendering mode for the compositor.
final
rippleManager → SubpixelRippleManager
Exposes the sub-pixel ripple manager for composite drop effects and click feedback.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
terminal → Terminal
The hardware/platform terminal wrapper.
final

Methods

addRipple(Point<int> position, {Color color = Colors.white, int durationMs = 500}) → void
Spawns a new expanding touch ripple at position and triggers composite rendering.
dispose() → void
Clears resources and restores terminal hardware state if modified.
handleKeyEvent(KeyEvent event) → void
Handles a keyboard event and routes it to the focused layer.
handleMouseEvent(MouseEvent event) → void
Handles a mouse event, performing hit testing and routing to layers.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
reassemble() → void
Called during hot reload to force all layers and widget trees to rebuild and repaint.
override
render() → void
Composites all active layers into a single flattened terminal output and writes it to the terminal.
scheduleRender() → void
Schedules a render pass to recomposite layers, coalescing multiple requests.
showDialog<T>({required WidgetBuilder builder, bool barrierDismissible = true, double barrierScalar = 0.5, int width = 40, int height = 10}) → Future<T?>
Displays a modal dialog by adding it as a higher layer. Returns a Future that completes when the dialog is dismissed/completed.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited