home · contact · privacy
Fix non-detection of resize character. master
authorChristian Heller <c.heller@plomlompom.de>
Thu, 24 Jul 2025 20:44:18 +0000 (22:44 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Thu, 24 Jul 2025 20:44:18 +0000 (22:44 +0200)
ircplom/tui.py

index 27e23428702415accecc6f36a6da45f8d775afd2..d81e1ece216448b991500b898cc8602b28968314 100644 (file)
@@ -10,8 +10,8 @@ from uuid import UUID
 # requirements.txt
 from blessed import Terminal as BlessedTerminal
 # ourselves
-from ircplom.events import (AffectiveEvent, Loop, PayloadMixin, QueueMixin,
-                            QuitEvent)
+from ircplom.events import (
+        AffectiveEvent, Loop, PayloadMixin, QueueMixin, QuitEvent)
 from ircplom.irc_conn import (
         IrcMessage, Client, ClientIdMixin, ClientQueueMixin,
         InitReconnectEvent, NewClientEvent, SendEvent)
@@ -28,7 +28,7 @@ _PROMPT_TEMPLATE = '> '
 _PROMPT_ELL_IN = '<…'
 _PROMPT_ELL_OUT = '…>'
 
-_ORD_CHAR_RESIZE = 12
+_CHAR_RESIZE = chr(12)
 _KEYBINDINGS = {
     'KEY_BACKSPACE': ('window.prompt.backspace',),
     'KEY_ENTER': ('prompt_enter',),
@@ -392,8 +392,9 @@ class _KeyboardEvent(TuiEvent, PayloadMixin):
     payload: str
 
     def affect(self, target: 'Tui') -> None:
-        if self.payload[0] == _ORD_CHAR_RESIZE:
+        if self.payload[0] == _CHAR_RESIZE:
             _SetScreenEvent().affect(target)
+            return
         if self.payload in _KEYBINDINGS:
             cmd_data = _KEYBINDINGS[self.payload]
             cmd = target.cmd_name_to_cmd(cmd_data[0])