From 6de0aef90b5bb2c73fd0f192eb79bf81e2fb6715 Mon Sep 17 00:00:00 2001 From: Sébastien Dailly Date: Sun, 20 Jul 2025 21:46:40 +0200 Subject: Refresh the screen when receiving a change from the host --- serial_conn.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'serial_conn.py') diff --git a/serial_conn.py b/serial_conn.py index 0775ba0..a781d64 100644 --- a/serial_conn.py +++ b/serial_conn.py @@ -9,6 +9,9 @@ class Client(Module): the json command. """ + def __init__(self): + self.last_name = None + def during_bootup(self, keyboard): try: # Do not set any timeout, we check before reading a string if there @@ -23,13 +26,17 @@ class Client(Module): def before_hid_send(self, keyboard): # Serial.data isn't initialized yet. - if not data: - return - - if not data.connected: - keyboard.keymap[0].name = "Disconnected" + if not data or not data.connected: + current_name = keyboard.keymap[0].name + if current_name != "Disconnected": + self.last_name = current_name + keyboard.keymap[0].name = "Disconnected" time.sleep(1) return + if self.last_name is not None: + keyboard.keymap[0].name = self.last_name + self.last_name = None + # Nothing to parse. if data.in_waiting <= 0: -- cgit v1.2.3