Scroll tilt left/right to navigate prev/next page

This commit is contained in:
pax 2026-04-05 00:08:38 -05:00
parent 053726b040
commit a97c85902c

View File

@ -5,7 +5,7 @@ from __future__ import annotations
from pathlib import Path from pathlib import Path
from PySide6.QtCore import Qt, Signal, QSize, QRect, QMimeData, QUrl, QPoint from PySide6.QtCore import Qt, Signal, QSize, QRect, QMimeData, QUrl, QPoint
from PySide6.QtGui import QPixmap, QPainter, QColor, QPen, QKeyEvent, QDrag from PySide6.QtGui import QPixmap, QPainter, QColor, QPen, QKeyEvent, QWheelEvent, QDrag
from PySide6.QtWidgets import ( from PySide6.QtWidgets import (
QWidget, QWidget,
QScrollArea, QScrollArea,
@ -399,6 +399,15 @@ class ThumbnailGrid(QScrollArea):
if value <= 0 and sb.maximum() > 0: if value <= 0 and sb.maximum() > 0:
self.reached_top.emit() self.reached_top.emit()
def wheelEvent(self, event: QWheelEvent) -> None:
delta = event.angleDelta().x()
if delta > 30:
self.nav_before_start.emit()
elif delta < -30:
self.nav_past_end.emit()
else:
super().wheelEvent(event)
def resizeEvent(self, event) -> None: def resizeEvent(self, event) -> None:
super().resizeEvent(event) super().resizeEvent(event)
if self._flow: if self._flow: