From: Christian Heller Date: Wed, 11 Jun 2025 17:04:46 +0000 (+0200) Subject: On '001' message, update respective connection's window's prompt nickname. X-Git-Url: https://plomlompom.com/repos/%22https:/validator.w3.org/calendar?a=commitdiff_plain;h=c045a7047bdf19412366ff7d27aaeb14e0685b3c;p=ircplom On '001' message, update respective connection's window's prompt nickname. --- diff --git a/ircplom.py b/ircplom.py index 50a916a..b7c165f 100755 --- a/ircplom.py +++ b/ircplom.py @@ -67,6 +67,7 @@ class EventType(Enum): INIT_CONNECT = auto() INIT_RECONNECT = auto() KEYBINDING = auto() + NICK_SET = auto() PING = auto() PROMPT_ADD = auto() QUIT = auto() @@ -816,6 +817,11 @@ class TuiLoop(Loop): conn_win.log.append(msg) if conn_win == self.window: self.window.log.draw() + elif event.type_ == EventType.NICK_SET: + conn_win = self._conn_windows[event.payload[0]] + conn_win.prompt.update_prompt(f' {event.payload[1]} ') + if conn_win == self.window: + self.window.prompt.draw() elif event.type_ == EventType.KEYBINDING: cmd = self._cmd_name_to_cmd(event.payload[0]) assert cmd is not None @@ -929,9 +935,12 @@ class ConnectionLoop(Loop): self.broadcast(EventType.RECV, (self._conn_idx, msg)) if msg.verb == 'PING': self._send('PONG', (msg.parameters[0],)) - if msg.verb == 'ERROR'\ + elif msg.verb == 'ERROR'\ and msg.parameters[0].startswith('Closing link:'): self.broadcast(EventType.DISCONNECTED, (self._conn_idx,)) + elif msg.verb == '001': + self.broadcast(EventType.NICK_SET, (self._conn_idx, + msg.parameters[0])) class KeyboardLoop(Loop):