tui: improve tmux experience and simplify keyboard enhancements#2017
tui: improve tmux experience and simplify keyboard enhancements#2017dgageot wants to merge 1 commit intodocker:mainfrom
Conversation
Enable ReportFocus and KeyboardEnhancements.ReportEventTypes in the fullscreen view so that tmux pane focus events and Kitty keyboard protocol features (shift+enter, key disambiguation) are requested from supporting terminals. Simplify keyboard enhancement tracking: - Remove redundant keyboardEnhancementsSupported bool field; derive it via hasKeyboardEnhancements() from the cached message instead. - Stop forwarding KeyboardEnhancementsMsg to chatPage, which has no handler for it. Only the editor uses it for keybinding config. Assisted-By: docker-agent
There was a problem hiding this comment.
Review Summary
Assessment: 🟢 APPROVE
This PR cleanly improves tmux/Kitty terminal support by enabling ReportFocus and KeyboardEnhancements.ReportEventTypes in fullscreen mode. The refactoring to remove the redundant keyboardEnhancementsSupported boolean field in favor of the hasKeyboardEnhancements() method is sound—it correctly derives the state from the cached message pointer and flags.
The removal of KeyboardEnhancementsMsg forwarding to chatPage is intentional and correct, since only the editor component uses keyboard enhancements for keybinding configuration.
No bugs found. All message handling, state management, and control flow changes follow correct patterns without introducing nil pointer dereferences, race conditions, or logic errors.
Enable ReportFocus and KeyboardEnhancements.ReportEventTypes in the fullscreen view so that tmux pane focus events and Kitty keyboard protocol features (shift+enter, key disambiguation) are requested from supporting terminals.
Simplify keyboard enhancement tracking:
keyboardEnhancementsSupportedbool field; derive it viahasKeyboardEnhancements()from the cached message instead.KeyboardEnhancementsMsgtochatPage, which has no handler for it. Only the editor uses it for keybinding config.