Scroll tilt flips pages without auto-selecting first post
Separate page_forward/page_back signals from nav boundary signals so tilt just changes page, doesn't trigger post preview.
This commit is contained in:
parent
f13a2f6b28
commit
5d87457840
@ -328,6 +328,8 @@ class BooruApp(QMainWindow):
|
||||
self._grid.multi_context_requested.connect(self._on_multi_context_menu)
|
||||
self._grid.nav_past_end.connect(self._on_nav_past_end)
|
||||
self._grid.nav_before_start.connect(self._on_nav_before_start)
|
||||
self._grid.page_forward.connect(self._next_page)
|
||||
self._grid.page_back.connect(self._prev_page)
|
||||
self._stack.addWidget(self._grid)
|
||||
|
||||
self._favorites_view = FavoritesView(self._db)
|
||||
|
||||
@ -222,6 +222,8 @@ class ThumbnailGrid(QScrollArea):
|
||||
reached_top = Signal() # emitted when scrolled to the top
|
||||
nav_past_end = Signal() # keyboard nav past last post
|
||||
nav_before_start = Signal() # keyboard nav before first post
|
||||
page_forward = Signal() # scroll tilt right
|
||||
page_back = Signal() # scroll tilt left
|
||||
|
||||
def __init__(self, parent: QWidget | None = None) -> None:
|
||||
super().__init__(parent)
|
||||
@ -402,9 +404,9 @@ class ThumbnailGrid(QScrollArea):
|
||||
def wheelEvent(self, event: QWheelEvent) -> None:
|
||||
delta = event.angleDelta().x()
|
||||
if delta > 30:
|
||||
self.nav_before_start.emit()
|
||||
self.page_back.emit()
|
||||
elif delta < -30:
|
||||
self.nav_past_end.emit()
|
||||
self.page_forward.emit()
|
||||
else:
|
||||
super().wheelEvent(event)
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user