Rework TUI: single-threaded curses, scrollback buffer, server menu
- All curses drawing on the main thread; stdin polled together with the ZMQ sockets, Ctrl-C only sets a flag - Output kept in a 2000-line buffer and redrawn from it, so resizes keep the history; PgUp/PgDn and mouse wheel scroll it - Messages without trailing newline continue the current line (status table columns arrive as separate messages) - Too-small terminal shows a warning instead of exiting - Start without arguments shows a server selection menu - Colors on the terminal default background; version 0.9.0
This commit is contained in:
@@ -89,10 +89,6 @@ class RconConnection:
|
||||
self.socket.send(command)
|
||||
logger.info(f'Sent command: {command}')
|
||||
|
||||
def poll(self, timeout):
|
||||
"""Poll for messages"""
|
||||
return self.socket.poll(timeout)
|
||||
|
||||
def recv_message(self):
|
||||
"""Receive a message (non-blocking)"""
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user