From cc616d1cf4ab460f204095af44607b7fce5a2dad Mon Sep 17 00:00:00 2001 From: pax Date: Fri, 10 Apr 2026 20:14:49 -0500 Subject: [PATCH] only select cell when clicking the pixmap, not the surrounding padding --- booru_viewer/gui/grid.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/booru_viewer/gui/grid.py b/booru_viewer/gui/grid.py index c2e20db..c7aa309 100644 --- a/booru_viewer/gui/grid.py +++ b/booru_viewer/gui/grid.py @@ -278,8 +278,19 @@ class ThumbnailWidget(QWidget): self._hover = False self.update() + def _hit_pixmap(self, pos) -> bool: + """True if pos is within the drawn pixmap area.""" + if not self._pixmap: + return False + px = (self.width() - self._pixmap.width()) // 2 + py = (self.height() - self._pixmap.height()) // 2 + return QRect(px, py, self._pixmap.width(), self._pixmap.height()).contains(pos) + def mousePressEvent(self, event) -> None: if event.button() == Qt.MouseButton.LeftButton: + if not self._hit_pixmap(event.position().toPoint()): + event.ignore() + return self._drag_start = event.position().toPoint() self.clicked.emit(self.index, event) elif event.button() == Qt.MouseButton.RightButton: