From fe29b9a34dbc46510116e5749fcb56c36ae9b121 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 15 Sep 2023 11:06:10 +0530 Subject: [PATCH] Allow for-light/dark-theme icon overrides to work for plugin icons placed by the user in the override dir --- src/calibre/gui2/__init__.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/calibre/gui2/__init__.py b/src/calibre/gui2/__init__.py index c7a97c5c40..63205e0ab6 100644 --- a/src/calibre/gui2/__init__.py +++ b/src/calibre/gui2/__init__.py @@ -173,6 +173,11 @@ class IconResourceManager: ans = os.path.join(self.override_icon_path, sq) elif len(parts) == 2: entries = self.override_items.get(parts[0], ()) + if not entries and self.override_icon_path and parts[0] not in self.override_items: + try: + self.override_items[parts[0]] = entries = frozenset(os.listdir(os.path.join(self.override_icon_path, parts[0]))) + except OSError: + self.override_items[parts[0]] = entries = frozenset() if entries: sq, ext = os.path.splitext(parts[1]) sq = f'{sq}-for-{self.color_palette}-theme{ext}'