diff --git a/DSView/pv/view/viewport.cpp b/DSView/pv/view/viewport.cpp index 84292aa0..f57a38eb 100644 --- a/DSView/pv/view/viewport.cpp +++ b/DSView/pv/view/viewport.cpp @@ -1239,13 +1239,19 @@ void Viewport::wheelEvent(QWheelEvent *event) isVertical = event->orientation() == Qt::Vertical; #endif + double zoom_scale = delta / 80; + + if (ABS_VAL(delta) <= 80){ + zoom_scale = delta > 0 ? 1.5 : -1.5; + } + if (_type == FFT_VIEW) { for (auto t : _view.session().get_spectrum_traces()) { if (t->enabled()) { - t->zoom(delta / 80, x); + t->zoom(zoom_scale, x); break; } } @@ -1274,10 +1280,10 @@ void Viewport::wheelEvent(QWheelEvent *event) } else { - _view.zoom(-delta / 80, x); + _view.zoom(-zoom_scale, x); } #else - _view.zoom(delta / 80, x); + _view.zoom(zoom_scale, x); #endif } else