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


Commits:
e4245494 by lovetox at 2022-08-20T14:07:50+02:00
cq: Settings: Add overload for workspace_order setting

- - - - -
a0d69074 by lovetox at 2022-08-20T14:10:53+02:00
cq: Avatar: Respect AvatarCacheT when setting values

- - - - -
801bec06 by lovetox at 2022-08-20T14:11:20+02:00
cq: Update pyrightconfig.json

- - - - -


4 changed files:

- gajim/common/setting_values.py
- gajim/common/settings.py
- gajim/gtk/avatar.py
- pyrightconfig.json


Changes:

=====================================
gajim/common/setting_values.py
=====================================
@@ -164,7 +164,7 @@ class _ACCOUNT_DEFAULT:
 ]
 
 AllSettings = Literal[BoolSettings, IntSettings, StringSettings]
-AllSettingsT = Union[str, int, bool]
+AllSettingsT = Union[str, int, bool, list[str]]
 
 APP_SETTINGS = {
     'always_english_wikipedia': False,


=====================================
gajim/common/settings.py
=====================================
@@ -585,6 +585,12 @@ def set_app_setting(self,
                         value: Optional[int]) -> None:
         ...
 
+    @overload
+    def set_app_setting(self,
+                        setting: Literal['workspace_order'],
+                        value: list[str]) -> None:
+        ...
+
     def set_app_setting(self,
                         setting: str,
                         value: Optional[AllSettingsT]) -> None:


=====================================
gajim/gtk/avatar.py
=====================================
@@ -52,8 +52,8 @@
 log = logging.getLogger('gajim.gui.avatar')
 
 
-AvatarCacheT = dict[JID, dict[tuple[int, int, Optional[str]],
-                              cairo.ImageSurface]]
+AvatarCacheT = dict[Union[JID, str], dict[tuple[int, int, Optional[str]],
+                                          cairo.ImageSurface]]
 
 
 def generate_avatar(letters: str,
@@ -340,7 +340,7 @@ class AvatarStorage(metaclass=Singleton):
     def __init__(self):
         self._cache: AvatarCacheT = defaultdict(dict)
 
-    def invalidate_cache(self, jid: JID) -> None:
+    def invalidate_cache(self, jid: Union[JID, str]) -> None:
         self._cache.pop(jid, None)
 
     def get_pixbuf(self,
@@ -412,11 +412,11 @@ def get_muc_surface(self,
 
         if transport_icon is not None:
             surface = load_icon_surface(transport_icon, size, scale)
-            self._cache[jid][(size, scale)] = surface
+            self._cache[jid][(size, scale, None)] = surface
             return surface
 
         if not default:
-            surface = self._cache[jid].get((size, scale))
+            surface = self._cache[jid].get((size, scale, None))
             if surface is not None:
                 return surface
 
@@ -425,7 +425,7 @@ def get_muc_surface(self,
                 surface = self.surface_from_filename(avatar_sha, size, scale)
                 if surface is not None:
                     surface = clip(surface, style)
-                    self._cache[jid][(size, scale)] = surface
+                    self._cache[jid][(size, scale, None)] = surface
                     return surface
 
                 # avatar_sha set, but image is missing
@@ -436,7 +436,7 @@ def get_muc_surface(self,
         name = get_groupchat_name(con, jid)
         letter = self._generate_letter(name)
         surface = generate_default_avatar(letter, str(jid), size, scale, style)
-        self._cache[jid][(size, scale)] = surface
+        self._cache[jid][(size, scale, None)] = surface
         return surface
 
     def get_workspace_surface(self,
@@ -444,7 +444,7 @@ def get_workspace_surface(self,
                               size: int,
                               scale: int) -> Optional[cairo.ImageSurface]:
 
-        surface = self._cache[workspace_id].get((size, scale))
+        surface = self._cache[workspace_id].get((size, scale, None))
         if surface is not None:
             return surface
 
@@ -465,7 +465,7 @@ def get_workspace_surface(self,
         letter = name[:1].upper()
         surface = make_workspace_avatar(
             letter, rgba_to_float(rgba), size, scale)
-        self._cache[workspace_id][(size, scale)] = surface
+        self._cache[workspace_id][(size, scale, None)] = surface
         return surface
 
     @staticmethod


=====================================
pyrightconfig.json
=====================================
@@ -123,6 +123,7 @@
         "gajim/gtk/util.py",
         "gajim/gtk/video_preview.py",
         "gajim/gtk/workspace_dialog.py",
+        "gajim/gtk/workspace_side_bar.py",
         "gajim/gtk/xml_console.py",
         "gajim/plugins/gajimplugin.py",
         "gajim/plugins/helpers.py",



View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/compare/b20ef67ee01c705bb1db37f1547bb5949ca5f891...801bec063d8160a1c43cc2535562354379e7d2e3

-- 
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/compare/b20ef67ee01c705bb1db37f1547bb5949ca5f891...801bec063d8160a1c43cc2535562354379e7d2e3
You're receiving this email because of your account on dev.gajim.org.


_______________________________________________
Commits mailing list
Commits@gajim.org
https://lists.gajim.org/cgi-bin/listinfo/commits

Reply via email to