Show correct tags in info panel for Library and Bookmarks

Library looks up metadata from library_meta table by post ID.
Bookmarks creates a Post from the bookmark's stored tags/score/rating.
This commit is contained in:
pax 2026-04-05 16:39:39 -05:00
parent 337d5d8087
commit 96740acb4c

View File

@ -1117,13 +1117,48 @@ class BooruApp(QMainWindow):
def _on_library_selected(self, path: str) -> None:
self._set_preview_media(path, Path(path).name)
self._update_fullscreen(path, Path(path).name)
# Show metadata in info panel
stem = Path(path).stem
if stem.isdigit() and self._info_panel.isVisible():
meta = self._db.get_library_meta(int(stem))
if meta:
from ..core.api.base import Post
p = Post(
id=int(stem), file_url=meta.get("file_url", ""),
preview_url=None, tags=meta.get("tags", ""),
score=meta.get("score", 0), rating=meta.get("rating"),
source=meta.get("source"), tag_categories={},
)
self._info_panel.set_post(p)
def _on_library_activated(self, path: str) -> None:
self._set_preview_media(path, Path(path).name)
self._update_fullscreen(path, Path(path).name)
stem = Path(path).stem
if stem.isdigit() and self._info_panel.isVisible():
meta = self._db.get_library_meta(int(stem))
if meta:
from ..core.api.base import Post
p = Post(
id=int(stem), file_url=meta.get("file_url", ""),
preview_url=None, tags=meta.get("tags", ""),
score=meta.get("score", 0), rating=meta.get("rating"),
source=meta.get("source"), tag_categories={},
)
self._info_panel.set_post(p)
def _on_bookmark_selected(self, fav) -> None:
self._status.showMessage(f"Bookmark #{fav.post_id}")
# Show bookmark tags in info panel
if self._info_panel.isVisible():
from ..core.api.base import Post
p = Post(
id=fav.post_id, file_url=fav.file_url or "",
preview_url=fav.preview_url, tags=fav.tags or "",
score=fav.score or 0, rating=fav.rating,
source=fav.source, tag_categories={},
)
self._info_panel.set_post(p)
self._on_bookmark_activated(fav)
def _on_bookmark_activated(self, fav) -> None: