fix: Reduce flickering in Modbus tool UI over SSH

Replaced  with  and  with  in the  and  functions of . This change optimizes screen updates in the Curses-based UI, which should significantly reduce flickering when running the tool over SSH connections.
Signed-off-by: Eduard Iten <eduard@iten.pro>
This commit is contained in:
Eduard Iten 2025-07-11 08:14:43 +02:00
parent 4df0181d7f
commit 32bb77926f
1 changed files with 3 additions and 3 deletions

View File

@ -189,7 +189,7 @@ def file_browser(stdscr):
selected_index = 0 selected_index = 0
while True: while True:
stdscr.clear() stdscr.erase()
h, w = stdscr.getmaxyx() h, w = stdscr.getmaxyx()
stdscr.addstr(0, 0, f"Select Firmware File: {path}".ljust(w-1), curses.color_pair(2)) stdscr.addstr(0, 0, f"Select Firmware File: {path}".ljust(w-1), curses.color_pair(2))
@ -293,7 +293,7 @@ def main_menu(stdscr, slave_id):
else: else:
message = "-> Firmware update cancelled." message = "-> Firmware update cancelled."
stdscr.clear() stdscr.erase()
if is_updating: if is_updating:
with update_lock: prog, msg = update_status["progress"], update_status["message"] with update_lock: prog, msg = update_status["progress"], update_status["message"]
stdscr.addstr(h // 2 - 1, w // 2 - 25, "FIRMWARE UPDATE IN PROGRESS", curses.A_BOLD | curses.color_pair(2)) stdscr.addstr(h // 2 - 1, w // 2 - 25, "FIRMWARE UPDATE IN PROGRESS", curses.A_BOLD | curses.color_pair(2))
@ -328,7 +328,7 @@ def main_menu(stdscr, slave_id):
if input_mode: if input_mode:
curses.curs_set(1); stdscr.addstr(h - 2, 0, (input_prompt + input_str).ljust(w-1), curses.color_pair(2)); stdscr.move(h - 2, len(input_prompt) + len(input_str)) curses.curs_set(1); stdscr.addstr(h - 2, 0, (input_prompt + input_str).ljust(w-1), curses.color_pair(2)); stdscr.move(h - 2, len(input_prompt) + len(input_str))
else: curses.curs_set(0) else: curses.curs_set(0)
stdscr.refresh() curses.doupdate()
def main(): def main():
global client global client