Fix DLC switch freeze: skip bulk cover scraping for themes/DLC
This commit is contained in:
+6
-3
@@ -2040,7 +2040,10 @@ class StorePage(QWidget):
|
||||
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)))
|
||||
elif rid not in self._cover_attempted:
|
||||
elif system not in ("theme", "dlc") and rid not in self._cover_attempted:
|
||||
# Themes and DLC have no meaningful box art in libretro/IGDB, and
|
||||
# bulk-scraping hundreds of them on every switch to the DLC list
|
||||
# saturates the network/CPU and makes the store unresponsive.
|
||||
self._cover_attempted.add(rid)
|
||||
self._cover_queue.append((row, {
|
||||
"name": covers.plain_title(it["name"]) or it["name"],
|
||||
@@ -2287,9 +2290,9 @@ class StorePage(QWidget):
|
||||
meta = dlg.selected_meta
|
||||
if meta:
|
||||
title = meta.get("title") or None
|
||||
info.save(str(rid), "games", meta, manual=True, title=title)
|
||||
info.save(str(rid), system, meta, manual=True, title=title)
|
||||
it["title_override"] = title or None
|
||||
self._refresh_item_cover(it, rid, "games")
|
||||
self._refresh_item_cover(it, rid, system)
|
||||
|
||||
def _refresh_item_cover(self, it, rid, system):
|
||||
p = covers.cover_path(rid, system)
|
||||
|
||||
Reference in New Issue
Block a user