Use pixel events for smooth zooming

helm-link
Jacopo De Simoi 10 years ago
parent c9aeb8fbc9
commit 944be4d93d
  1. 16
      ui/pageview.cpp

@ -3347,17 +3347,11 @@ void PageView::wheelEvent( QWheelEvent *e )
vScroll = verticalScrollBar()->value(); vScroll = verticalScrollBar()->value();
e->accept(); e->accept();
if ( (e->modifiers() & Qt::ControlModifier) == Qt::ControlModifier ) { if ( (e->modifiers() & Qt::ControlModifier) == Qt::ControlModifier ) {
d->controlWheelAccumulatedDelta += delta; d->zoomFactor *= exp( (double)delta / 120.0 );
if ( d->controlWheelAccumulatedDelta <= -QWheelEvent::DefaultDeltasPerStep ) d->blockPixmapsRequest = true;
{ updateZoom( ZoomRefreshCurrent );
slotZoomOut(); d->blockPixmapsRequest = false;
d->controlWheelAccumulatedDelta = 0; viewport()->repaint();
}
else if ( d->controlWheelAccumulatedDelta >= QWheelEvent::DefaultDeltasPerStep )
{
slotZoomIn();
d->controlWheelAccumulatedDelta = 0;
}
} }
else else
{ {

Loading…
Cancel
Save