X-Git-Url: https://plomlompom.com/repos/%7B%7B%20web_path%20%7D%7D/decks/%7B%7Bdeck_id%7D%7D/cards/%7B%7Bcard_id%7D%7D/static/process?a=blobdiff_plain;f=client%2Fwindow_management.py;h=a896b0207e39bb970db07572145dbf07ae69f6b0;hb=HEAD;hp=610764b5402bf69fd83b57c5ad94243acf64b616;hpb=a4e6c51b2e9aa85dc5f5e3067b602c01953a6d43;p=plomrogue
diff --git a/client/window_management.py b/client/window_management.py
index 610764b..a896b02 100644
--- a/client/window_management.py
+++ b/client/window_management.py
@@ -108,14 +108,20 @@ def set_windows():
def draw_screen():
def healthy_addch(y, x, char, attr=0):
- """Workaround for ."""
+ """Wrap Python curses' addch() weirdnesses into sane interface.
+
+ Works around with
+ and enforces char to be a byte
+ instead of a single-char string.
+ """
if y == screen_size[0] - 1 and x == screen_size[1] - 1:
char_before = stdscr.inch(y, x - 1)
- stdscr.addch(y, x - 1, char, attr)
+ stdscr.addch(y, x - 1, char.encode(), attr)
stdscr.insstr(y, x - 1, " ")
- stdscr.addch(y, x - 1, char_before)
+ stdscr.addch(y, x - 1,
+ char_before & 0xFF, char_before & curses.A_ATTRIBUTES)
else:
- stdscr.addch(y, x, char, attr)
+ stdscr.addch(y, x, char.encode(), attr)
def draw_window_border_lines():
for win in windows: