some fixes

This commit is contained in:
2026-04-03 04:10:16 -03:00
parent 6159b2a027
commit 6852bb8889
4 changed files with 15 additions and 28 deletions

View File

@@ -563,14 +563,14 @@ class ChtWindow(Adw.ApplicationWindow):
def _setup_keyboard(self):
kb = KeyboardManager()
kb.set_passthrough(lambda: self.get_focus() is self._input_entry)
kb.set_passthrough(lambda: self.get_focus() is self._input_entry, except_keys={KEY_ESCAPE})
kb.bind(KEY_LEFT, lambda **_: self._frames_panel.select_adjacent(-1))
kb.bind(KEY_RIGHT, lambda **_: self._frames_panel.select_adjacent(1))
kb.bind(KEY_UP, lambda shift=False, **_: self._transcript_panel.select_adjacent(-1, extend=shift))
kb.bind(KEY_DOWN, lambda shift=False, **_: self._transcript_panel.select_adjacent(1, extend=shift))
kb.bind(KEY_RETURN, lambda **_: self._send_message(self._build_selection_message("answer")) if self._build_selection_message("answer") else None)
kb.bind(KEY_KP_ENTER, lambda **_: self._send_message(self._build_selection_message("answer")) if self._build_selection_message("answer") else None)
kb.bind(KEY_ESCAPE, lambda **_: (self._frames_panel.clear_selection(), self._transcript_panel.clear_selection()))
kb.bind(KEY_ESCAPE, lambda **_: (self.set_focus(None), self._frames_panel.clear_selection(), self._transcript_panel.clear_selection()))
kb.bind(KEY_DELETE, lambda **_: self._on_clear_agent_output(None))
kb.attach(self)
@@ -596,6 +596,8 @@ class ChtWindow(Adw.ApplicationWindow):
if text is None:
text = self._input_entry.get_text().strip()
self._input_entry.set_text("")
if not text:
text = self._build_selection_message("answer")
if not text:
return
if not self._stream_mgr: