Fixed input capture for UI
Reduced API surface
Added key input for UI