RuntimeUiInput
Execution-owner-confined forwarding gate for a fixed set of native bindings. Tracks at most bindings' size, releases before changing input session/policy or entering text editing, and never forwards consumed UI events. The adapter resolves actual remapped keys for each event and supplies only matching binding identities.
Functions
Updates the active input session and permissions, clearing prior press ownership before adapter callbacks.
Forwards a physical key/button transition only to permitted bindings; release always clears a forwarded press. Repeated down notifications do not toggle or enqueue another press while that binding remains held.
Adopts already-held bindings for the configured session without generating another press. The adapter calls this once after a successful gameplay-to-UI transition and restores only native held state. Policy and text focus still apply; adopted bindings participate in the same release boundaries as new presses.