Philipp Hörist pushed to branch master at gajim / gajim

Commits:

1 changed file:

Changes:

  • gajim/gtk/avatar.py
    ... ... @@ -37,7 +37,6 @@ from gajim.gtk.util import scale_with_ratio
    37 37
     log = logging.getLogger('gajim.gtk.avatar')
    
    38 38
     
    
    39 39
     
    
    40
    -@lru_cache(maxsize=1024)
    
    41 40
     def generate_avatar(letters, color, size, scale):
    
    42 41
         # Get color for nickname with XEP-0392
    
    43 42
         color_r, color_g, color_b = color
    
    ... ... @@ -139,7 +138,9 @@ class AvatarStorage(metaclass=Singleton):
    139 138
             else:
    
    140 139
                 color_string = contact.jid
    
    141 140
     
    
    142
    -        surface = self._generate_default_avatar(name, color_string, size, scale)
    
    141
    +        letter = self._generate_letter(name)
    
    142
    +        surface = self._generate_default_avatar(
    
    143
    +            letter, color_string, size, scale)
    
    143 144
             self._cache[jid][(size, scale)] = surface
    
    144 145
             return surface
    
    145 146
     
    
    ... ... @@ -159,7 +160,8 @@ class AvatarStorage(metaclass=Singleton):
    159 160
     
    
    160 161
             con = app.connections[account]
    
    161 162
             name = get_groupchat_name(con, jid)
    
    162
    -        surface = self._generate_default_avatar(name, jid, size, scale)
    
    163
    +        letter = self._generate_letter(name)
    
    164
    +        surface = self._generate_default_avatar(letter, jid, size, scale)
    
    163 165
             self._cache[jid][(size, scale)] = surface
    
    164 166
             return surface
    
    165 167
     
    
    ... ... @@ -265,8 +267,9 @@ class AvatarStorage(metaclass=Singleton):
    265 267
                     return letter.capitalize()
    
    266 268
             return name[0].capitalize()
    
    267 269
     
    
    268
    -    def _generate_default_avatar(self, name, color_string, size, scale):
    
    269
    -        letter = self._generate_letter(name)
    
    270
    +    @staticmethod
    
    271
    +    @lru_cache(maxsize=2048)
    
    272
    +    def _generate_default_avatar(letter, color_string, size, scale):
    
    270 273
             color = text_to_color(color_string)
    
    271 274
             surface = generate_avatar(letter, color, size, scale)
    
    272 275
             surface = clip_circle(surface)