From: Christian Heller Date: Fri, 30 May 2025 13:30:11 +0000 (+0200) Subject: Move prompt command processing out of TuiLoop. X-Git-Url: https://plomlompom.com/repos/%22https:/validator.w3.org/templates?a=commitdiff_plain;h=e2880846c4486f73f9ffaff367204ff2d42179f7;p=ircplom Move prompt command processing out of TuiLoop. --- diff --git a/ircplom.py b/ircplom.py index ddea13e..2e5defc 100755 --- a/ircplom.py +++ b/ircplom.py @@ -357,11 +357,7 @@ class TuiLoop(Loop): self._draw_log() elif event.type_ == 'INPUT_PROMPT': if event.payload[0] == 'ENTER': - toks = self._prompt.split(maxsplit=1) - if toks and toks[0] in {'QUIT'}: - self.broadcast('SEND', IrcMessage(toks[0], toks[1:])) - else: - self.broadcast('ALERT', f'invalid message: {self._prompt}') + self.broadcast('PROMPT_COMMAND', self._prompt) self._prompt = '' elif event.payload[0] == 'BACKSPACE': self._prompt = self._prompt[:-1] @@ -450,6 +446,15 @@ def run() -> None: q_to_main.put( Event('SEND', IrcMessage('PONG', [msg.parameters[0]]))) + elif event.type_ == 'PROMPT_COMMAND': + toks = event.payload.split(maxsplit=1) + if toks and toks[0] in {'QUIT'}: + q_to_main.put( + Event('SEND', IrcMessage(toks[0], toks[1:]))) + else: + q_to_main.put( + Event('ALERT', + f'invalid message: {event.payload}')) if __name__ == '__main__':