refactor(hermes_cli): browse key handling early-returns; salvage helper one-liners

This commit is contained in:
Teknium
2026-09-02 23:42:50 -07:00
parent 4db49fe512
commit d489d01dce
2 changed files with 14 additions and 18 deletions
+12 -13
View File
@@ -150,16 +150,15 @@ class _CursesBrowser:
c = self.curses
if self.confirm_delete is not None: # y/n confirmation mode — only an explicit 'y' deletes
target, self.confirm_delete = self.confirm_delete, None
if key in {ord("y"), ord("Y")}:
if self.delete_fn(target["id"]):
self.sessions[:] = [s for s in self.sessions if s["id"] != target["id"]]
self._refilter(reset_cursor=False)
self.flash = "Deleted."
if not self.sessions:
return True
else:
self.flash = "Delete failed."
return False
if key not in {ord("y"), ord("Y")}:
return False
if not self.delete_fn(target["id"]):
self.flash = "Delete failed."
return False
self.sessions[:] = [s for s in self.sessions if s["id"] != target["id"]]
self._refilter(reset_cursor=False)
self.flash = "Deleted."
return not self.sessions
if key in (c.KEY_UP, c.KEY_DOWN):
if self.filtered:
self.cursor = (self.cursor + (1 if key == c.KEY_DOWN else -1)) % len(self.filtered)
@@ -167,9 +166,9 @@ class _CursesBrowser:
if self.filtered:
self.result = self.filtered[self.cursor]["id"]
return True
elif key == 27: # Esc: first clears the search, second exits
if not self.search:
return True
elif key == 27 and not self.search: # Esc: first clears the search, second exits
return True
elif key == 27:
self.search = ""
self._refilter()
elif key in {c.KEY_BACKSPACE, 127, 8}: