From 5bfca8a704b14bc4ba2d8cb1e5cfeb3cfa0afdca Mon Sep 17 00:00:00 2001 From: mathieui Date: Sun, 17 May 2020 19:47:29 +0200 Subject: Fix highlights color --- poezio/windows/base_wins.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/poezio/windows/base_wins.py b/poezio/windows/base_wins.py index d6c72912..f371c106 100644 --- a/poezio/windows/base_wins.py +++ b/poezio/windows/base_wins.py @@ -80,15 +80,18 @@ class Win: @contextmanager def colored_text(self, color: Optional[Tuple]=None, attr: Optional[int]=None): """Context manager which sets up an attr/color when inside""" - if attr is None: - if color is not None: - attr = to_curses_attr(color) - else: - yield None - return - self._win.attron(attr) + if color is None and attr is None: + yield None + return + if color is not None: + mode = to_curses_attr(color) + if attr is not None: + mode = mode | attr + else: + mode = attr + self._win.attron(mode) yield None - self._win.attroff(attr) + self._win.attroff(mode) def addstr(self, *args) -> None: """ -- cgit v1.2.3