From 81d7eeb3c08c19e2d0a1e34852ec85aaeee0b87a Mon Sep 17 00:00:00 2001 From: Christian Heller Date: Mon, 16 Nov 2020 00:47:00 +0100 Subject: [PATCH] In curses client, don't flash outside of refresh loop. --- rogue_chat_curses.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/rogue_chat_curses.py b/rogue_chat_curses.py index 2dfbdd1..18977d2 100755 --- a/rogue_chat_curses.py +++ b/rogue_chat_curses.py @@ -139,7 +139,7 @@ cmd_PORTAL.argtypes = 'yx_tuple:nonneg string' def cmd_PLAY_ERROR(game, msg): game.tui.log_msg('? ' + msg) - game.tui.flash() + game.tui.flash = True game.tui.do_refresh = True cmd_PLAY_ERROR.argtypes = 'string' @@ -291,11 +291,9 @@ class TUI: self.force_instant_connect = True self.input_lines = [] self.fov = '' + self.flash = False curses.wrapper(self.loop) - def flash(self): - curses.flash() - def connect(self): def handle_recv(msg): @@ -431,7 +429,7 @@ class TUI: self.explorer = target self.query_info() else: - self.flash() + self.flash = True def draw_history(): lines = [] @@ -636,6 +634,9 @@ class TUI: else: self.send('PING') last_ping = now + if self.flash: + curses.flash() + self.flash = False if self.do_refresh: draw_screen() self.do_refresh = False @@ -748,7 +749,7 @@ class TUI: self.host = self.game.portals[player.position] self.reconnect() else: - self.flash() + self.flash = True self.log_msg('? not standing on portal') elif key in self.movement_keys and 'MOVE' in self.game.tasks: self.send('TASK:MOVE ' + self.movement_keys[key]) -- 2.30.2