Constructs a new FocusManager instance.
OptionalfocusDebug group for visualizing focus.
OptionalfocusDebug label for visualizing focus.
OptionalfocusDebug rectangle for visualizing focus.
OptionalfocusedThe currently focused view.
OptionalfocusThe view on which focus is locked.
PrivatefocusThe current normalized input event being dispatched.
PrivateinputIndicates whether focus is currently locked.
Indicates whether the focus is locked on the native renderer.
PrivatekeyA mapping of keys to navigation directions.
The last view that was focused.
PrivatelastPrivatelastOptionalnativeThe native SceneGraph node that currently has platform focus (e.g. Roku focusedChild). May differ from focusedView.renderer when focus is locked on a native renderer.
Minimum interval between repeated directional focus moves during a long press.
Locks focus on the specified view.
The view to lock focus on.
Unlocks focus.
Internal method to handle periodic updates for focus management.
Toggles the visibility of the debug view.
Adds a debug view for visualizing focus.
PrivatecopyPrivatecopyPrivatenotifyNotifies parent views of a focused child change event.
The child view that triggered the event.
PrivateregisterRegisters an error for the specified view.
The error message.
The view associated with the error.
PrivaterelayDev relay only — implementation is registered from app bootstrap (e.g. BaseApp).
PrivatereportPrivatesendSets focus to the specified view.
The view to focus on.
Whether to force the focus change (default: false).
An operation result indicating success or failure.
Sets the native focus on the specified renderer or the global scene.
Optionalrenderer: ISGNNodeThe renderer to set focus on (optional).
Configures the minimum interval between repeated directional focus moves during a long press.
The interval in milliseconds. Values below 0 are treated as 0.
Privateshould
FocusManageris responsible for managing focus within the application. It handles input events, focus transitions, and focus locking mechanisms.