From 115cdd84b02f8ea2d4e542e81c2f70b8f1512167 Mon Sep 17 00:00:00 2001 From: Mathieu Moran Date: Tue, 8 Sep 2026 22:56:58 -0400 Subject: [PATCH] Store: show cached theme previews in grid and details panel --- app/gui.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/gui.py b/app/gui.py index 19685dc..2ed5a20 100644 --- a/app/gui.py +++ b/app/gui.py @@ -1510,7 +1510,7 @@ class StoreDetailsPanel(QWidget): if lc is not None: rid, system = lc else: - rid, system = covers.stable_key(item["name"]), "games" + rid, system = covers.stable_key(item["name"]), item.get("system") or "games" self._set_cover(rid, system) def _set_cover(self, rid, system): @@ -2033,7 +2033,12 @@ class StorePage(QWidget): else: rid, system = covers.stable_key(it["name"]), it.get("system") or "games" if not covers.is_scrapable(system): - return # themes/DLC have no covers + # Themes/DLC aren't scraped, but a downloaded theme's preview is + # cached locally — show it when available. + p = covers.cover_path(rid, system) + if p.exists() and covers.file_is_image(p): + item.setIcon(QIcon(_fit_pixmap(QPixmap(str(p)), self.ICON_W, self.ICON_H))) + return p = covers.cover_path(rid, system) if p.exists() and covers.file_is_image(p): item.setIcon(QIcon(_fit_pixmap(QPixmap(str(p)), self.ICON_W, self.ICON_H)))