diff --git a/lib/documentview/documentview.cpp b/lib/documentview/documentview.cpp --- a/lib/documentview/documentview.cpp +++ b/lib/documentview/documentview.cpp @@ -594,11 +594,14 @@ } if (GwenviewConfig::mouseWheelBehavior() == MouseWheelBehavior::Browse && event->modifiers() == Qt::NoModifier) { + d->controlWheelAccumulatedDelta += event->delta(); // Browse with mouse wheel - if (event->delta() > 0) { + if (d->controlWheelAccumulatedDelta >= QWheelEvent::DefaultDeltasPerStep) { previousImageRequested(); - } else { + d->controlWheelAccumulatedDelta = 0; + } else if (d->controlWheelAccumulatedDelta <= -QWheelEvent::DefaultDeltasPerStep) { nextImageRequested(); + d->controlWheelAccumulatedDelta = 0; } return; }