Use angleDelta

pixelDelta is only provided in systems that support it
This commit is contained in:
Luis Ángel San Martín 2021-10-01 20:23:20 +02:00
parent 052e7ffba0
commit ae43f23c85
3 changed files with 12 additions and 10 deletions

View File

@ -195,7 +195,7 @@ void GoToFlow::updateImageData()
void GoToFlow::wheelEvent(QWheelEvent *event) void GoToFlow::wheelEvent(QWheelEvent *event)
{ {
if (event->pixelDelta().y() < 0) if (event->angleDelta().y() < 0)
flow->showNext(); flow->showNext();
else else
flow->showPrevious(); flow->showPrevious();

View File

@ -144,28 +144,28 @@ void MagnifyingGlass::wheelEvent(QWheelEvent *event)
switch (event->modifiers()) { switch (event->modifiers()) {
// size // size
case Qt::NoModifier: case Qt::NoModifier:
if (event->pixelDelta().y() < 0) if (event->angleDelta().y() < 0)
sizeUp(); sizeUp();
else else
sizeDown(); sizeDown();
break; break;
// size height // size height
case Qt::ControlModifier: case Qt::ControlModifier:
if (event->pixelDelta().y() < 0) if (event->angleDelta().y() < 0)
heightUp(); heightUp();
else else
heightDown(); heightDown();
break; break;
// size width // size width
case Qt::AltModifier: case Qt::AltModifier:
if (event->pixelDelta().y() < 0) if (event->angleDelta().y() < 0)
widthUp(); widthUp();
else else
widthDown(); widthDown();
break; break;
// zoom level // zoom level
case Qt::ShiftModifier: case Qt::ShiftModifier:
if (event->pixelDelta().y() < 0) if (event->angleDelta().y() < 0)
zoomIn(); zoomIn();
else else
zoomOut(); zoomOut();

View File

@ -688,13 +688,15 @@ static void animateScroll(QPropertyAnimation &scroller, const QScrollBar &scroll
void Viewer::wheelEvent(QWheelEvent *event) void Viewer::wheelEvent(QWheelEvent *event)
{ {
auto delta = event->angleDelta();
if (render->hasLoadedComic()) { if (render->hasLoadedComic()) {
if (event->pixelDelta().x() != 0) { if (delta.x() != 0) {
animateScroll(*horizontalScroller, *horizontalScrollBar(), event->pixelDelta().x()); animateScroll(*horizontalScroller, *horizontalScrollBar(), delta.x());
return; return;
} }
if ((event->pixelDelta().y() < 0) && (verticalScrollBar()->sliderPosition() == verticalScrollBar()->maximum())) { if ((delta.y() < 0) && (verticalScrollBar()->sliderPosition() == verticalScrollBar()->maximum())) {
if (wheelStop || verticalScrollBar()->maximum() == verticalScrollBar()->minimum()) { if (wheelStop || verticalScrollBar()->maximum() == verticalScrollBar()->minimum()) {
if (getMovement(event) == Forward) { if (getMovement(event) == Forward) {
next(); next();
@ -706,7 +708,7 @@ void Viewer::wheelEvent(QWheelEvent *event)
} else } else
wheelStop = true; wheelStop = true;
} else { } else {
if ((event->pixelDelta().y() > 0) && (verticalScrollBar()->sliderPosition() == verticalScrollBar()->minimum())) { if ((delta.y() > 0) && (verticalScrollBar()->sliderPosition() == verticalScrollBar()->minimum())) {
if (wheelStop || verticalScrollBar()->maximum() == verticalScrollBar()->minimum()) { if (wheelStop || verticalScrollBar()->maximum() == verticalScrollBar()->minimum()) {
if (getMovement(event) == Backward) { if (getMovement(event) == Backward) {
prev(); prev();
@ -720,7 +722,7 @@ void Viewer::wheelEvent(QWheelEvent *event)
} }
} }
animateScroll(*verticalScroller, *verticalScrollBar(), event->pixelDelta().y()); animateScroll(*verticalScroller, *verticalScrollBar(), delta.y());
} }
} }