fix: Clear screen after printing labels and forum searches
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
This commit is contained in:
43
tui.py
43
tui.py
@@ -658,53 +658,77 @@ class LabelScreen(Screen):
|
||||
self.is_typing = True
|
||||
else: self.try_highlight(c)
|
||||
elif self.sub_screen == 'tool':
|
||||
if c == KEY_ESCAPE: self.on_enter()
|
||||
if c == KEY_ESCAPE:
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
elif c == KEY_ENTER:
|
||||
if len(self.label_tool) > 1:
|
||||
self.stdscr.addstr(15, 4, 'Printing...'); self.stdscr.refresh()
|
||||
try: utils.print_tool_label(self.label_tool[:-1])
|
||||
except: self.stdscr.addstr(15, 4, 'Error.'); self.stdscr.refresh(); time.sleep(2)
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
elif c <= 57 and c >= 48:
|
||||
self.label_tool = self.handle_text_input(c, self.label_tool)
|
||||
elif self.sub_screen == 'material_name':
|
||||
if c == KEY_ESCAPE: self.on_enter()
|
||||
if c == KEY_ESCAPE:
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
elif c == KEY_ENTER and len(self.label_material_name) > 1:
|
||||
self.sub_screen = 'material_contact'; self.label_material_contact = '_'
|
||||
else: self.label_material_name = self.handle_text_input(c, self.label_material_name)
|
||||
elif self.sub_screen == 'material_contact':
|
||||
if c == KEY_ESCAPE: self.on_enter()
|
||||
if c == KEY_ESCAPE:
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
elif c == KEY_ENTER and len(self.label_material_contact) > 1:
|
||||
self.stdscr.addstr(15, 4, 'Printing...'); self.stdscr.refresh()
|
||||
utils.print_sheet_label(self.label_material_name[:-1], self.label_material_contact[:-1])
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
else: self.label_material_contact = self.handle_text_input(c, self.label_material_contact)
|
||||
elif self.sub_screen == 'generic':
|
||||
if c == KEY_ESCAPE: self.on_enter()
|
||||
if c == KEY_ESCAPE:
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
elif c == KEY_ENTER and len(self.label_generic) > 1:
|
||||
self.stdscr.addstr(15, 4, 'Printing...'); self.stdscr.refresh()
|
||||
try: utils.print_generic_label(self.label_generic[:-1])
|
||||
except: self.stdscr.addstr(15, 4, 'Error.'); self.stdscr.refresh(); time.sleep(2)
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
else: self.label_generic = self.handle_text_input(c, self.label_generic)
|
||||
elif self.sub_screen == 'consumable':
|
||||
if c == KEY_ESCAPE: self.on_enter()
|
||||
if c == KEY_ESCAPE:
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
elif c == KEY_ENTER and len(self.label_consumable) > 1:
|
||||
self.stdscr.addstr(15, 4, 'Printing...'); self.stdscr.refresh()
|
||||
try: utils.print_consumable_label(self.label_consumable[:-1])
|
||||
except: self.stdscr.addstr(15, 4, 'Error.'); self.stdscr.refresh(); time.sleep(2)
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
else: self.label_consumable = self.handle_text_input(c, self.label_consumable)
|
||||
elif self.sub_screen == 'forum_search':
|
||||
if c == KEY_ESCAPE: self.on_enter()
|
||||
if c == KEY_ESCAPE:
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
elif c == KEY_ENTER and len(self.label_forum_search) > 2:
|
||||
self.stdscr.addstr(16, 4, 'Searching...'); self.stdscr.refresh()
|
||||
try: self.search_results = utils.search_forum_thread(self.label_forum_search[:-1])
|
||||
except: self.stdscr.addstr(16, 4, 'Error.'); self.stdscr.refresh(); time.sleep(2)
|
||||
try:
|
||||
self.search_results = utils.search_forum_thread(self.label_forum_search[:-1])
|
||||
except:
|
||||
self.stdscr.addstr(16, 4, 'Error.'); self.stdscr.refresh(); time.sleep(2)
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
return
|
||||
self.sub_screen = 'forum_results'
|
||||
self.stdscr.erase()
|
||||
else: self.label_forum_search = self.handle_text_input(c, self.label_forum_search)
|
||||
elif self.sub_screen == 'forum_results':
|
||||
if c == KEY_ESCAPE: self.on_enter()
|
||||
if c == KEY_ESCAPE:
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
elif c >= 49 and c <= 57:
|
||||
num = int(chr(c))
|
||||
if self.search_results and num <= len(self.search_results):
|
||||
@@ -712,6 +736,7 @@ class LabelScreen(Screen):
|
||||
try: utils.print_forum_label(self.search_results[num-1])
|
||||
except: self.stdscr.addstr(15, 4, 'Error.'); self.stdscr.refresh(); time.sleep(2)
|
||||
self.on_enter()
|
||||
self.stdscr.erase()
|
||||
else: self.try_highlight(c)
|
||||
else: self.try_highlight(c)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user