From 196e3ac82f91304cd60f5eaa8420c0bd87a480a1 Mon Sep 17 00:00:00 2001 From: Mathieu Moran Date: Mon, 7 Sep 2026 20:05:31 -0400 Subject: [PATCH] gui: show the source filename in Library and Store details Add a muted, selectable filename line under the title in both details panels, with the full path as its tooltip (archive name in the Store, disc/ISO filename in the Library). --- app/gui.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/app/gui.py b/app/gui.py index 03fd29a..2a81e5c 100644 --- a/app/gui.py +++ b/app/gui.py @@ -611,6 +611,12 @@ class GameDetailsPanel(QWidget): self.subtitle.setStyleSheet("color: #999;") self.layout.addWidget(self.subtitle) + self.filename = QLabel("") + self.filename.setStyleSheet("color: #777;") + self.filename.setWordWrap(True) + self.filename.setTextInteractionFlags(Qt.TextSelectableByMouse) + self.layout.addWidget(self.filename) + self.layout.addSpacing(8) self.meta_grid = QGridLayout() self.meta_grid.setHorizontalSpacing(14) @@ -676,6 +682,9 @@ class GameDetailsPanel(QWidget): self.system = item.get("system") self._ps1_kind = item.get("ps1_kind") path = item.get("path") or "" + self.filename.setText(Path(path).name if path else "") + self.filename.setToolTip(path) + self.filename.setVisible(bool(path)) is_ps1 = item.get("system") == "ps1" is_ps1_disc = is_ps1 and item.get("ps1_kind") == "disc" self.play_btn.setEnabled( @@ -1412,6 +1421,12 @@ class StoreDetailsPanel(QWidget): self.subtitle.setStyleSheet("color: #999;") self.layout.addWidget(self.subtitle) + self.filename = QLabel("") + self.filename.setStyleSheet("color: #777;") + self.filename.setWordWrap(True) + self.filename.setTextInteractionFlags(Qt.TextSelectableByMouse) + self.layout.addWidget(self.filename) + self.layout.addSpacing(8) self.meta_grid = QGridLayout() self.meta_grid.setHorizontalSpacing(14) @@ -1445,6 +1460,11 @@ class StoreDetailsPanel(QWidget): def set_item(self, item): self._item = item + fpath = item.get("path") or "" + fname = Path(fpath).name if fpath else (item.get("name") or "") + self.filename.setText(fname) + self.filename.setToolTip(fpath or fname) + self.filename.setVisible(bool(fname)) self.title.setText(item.get("title_override") or store.display_name(item["name"])) parts = [] size = item.get("size")