summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlouiz’ <louiz@louiz.org>2016-07-06 09:26:03 +0200
committerlouiz’ <louiz@louiz.org>2016-07-06 09:26:03 +0200
commite397f38b47ae16364bf4345e59ad8b6b0703aa5b (patch)
tree6c15fd2f7b85df0595f1243e29b02c1f359c7a21
parent409b1513ce83e114235c33079fa67623c7843f7e (diff)
parent69b4480e9e6ff578b880b7d8089616bc68e60f71 (diff)
downloadpoezio-e397f38b47ae16364bf4345e59ad8b6b0703aa5b.tar.gz
poezio-e397f38b47ae16364bf4345e59ad8b6b0703aa5b.tar.bz2
poezio-e397f38b47ae16364bf4345e59ad8b6b0703aa5b.tar.xz
poezio-e397f38b47ae16364bf4345e59ad8b6b0703aa5b.zip
Merge remote-tracking branch 'linkmauve/big-performances-improvement'
-rwxr-xr-xpoezio/theming.py2
-rw-r--r--poezio/windows/muc.py5
2 files changed, 5 insertions, 2 deletions
diff --git a/poezio/theming.py b/poezio/theming.py
index 5b2546d7..0ead632e 100755
--- a/poezio/theming.py
+++ b/poezio/theming.py
@@ -69,6 +69,7 @@ log = logging.getLogger(__name__)
from poezio.config import config
import curses
+import functools
import os
from os import path
@@ -403,6 +404,7 @@ def read_tuple(_str):
char = attrs[2] if len(attrs) > 2 else '\0'
return (int(attrs[0]), int(attrs[1])), char
+@functools.lru_cache(maxsize=128)
def to_curses_attr(color_tuple):
"""
Takes a color tuple (as defined at the top of this file) and
diff --git a/poezio/windows/muc.py b/poezio/windows/muc.py
index 8b72d24c..3e78bfb3 100644
--- a/poezio/windows/muc.py
+++ b/poezio/windows/muc.py
@@ -47,10 +47,11 @@ class UserList(Win):
self.cache = new
self.refresh(users)
return
- for i in range(len(old)):
- if old[i] != new[i]:
+ for a, b in zip(old, new):
+ if a != b:
self.cache = new
self.refresh(users)
+ return
def refresh(self, users):
log.debug('Refresh: %s', self.__class__.__name__)