3 Commits

  • feat: support key release opt-in dispatch
    - keep parsed Kitty release events available to runtime listeners
    
    - filter key release before focused component dispatch unless component opts in
    
    - cover default filtering, opt-in dispatch, and keybinding non-match behavior
  • feat: expand terminal key protocol parsing
    - add key event phase metadata for parsed input events
    
    - parse Kitty CSI-u and modifyOtherKeys style key sequences
    
    - filter release events from keybinding dispatch by default
    
    - cover Shift+Tab and Kitty key parsing with xUnit regressions
  • feat: add tui test infrastructure
    - add xunit regression project with virtual terminal output
    
    - cover text input overlay rendering and component checks