[okular] [Bug 427504] Jittery scrolling behavior with a free-scrolling mouse

David Hurka bugzilla_noreply at kde.org
Tue Oct 13 12:45:27 BST 2020


https://bugs.kde.org/show_bug.cgi?id=427504

--- Comment #5 from David Hurka <david.hurka at mailbox.org> ---
Created attachment 132319
  --> https://bugs.kde.org/attachment.cgi?id=132319&action=edit
Slightly jittery scrolling with `xdotool key Down`

This is what I get with `xdotool key --delay 5 Down Down [...] Down`. Afaik
arrow key events go the same code path as wheel events.

These are arrow key events at 200Hz. Scrolling is slightly jittery, but not
always.

This is the relevant code from slotScrollDown():

> d->scroller->scrollTo(d->scroller->finalPosition() + QPoint(0, 100 * nSteps), 100);

This makes an undamped regulator/controller. If you consider the animation
timer a feedback loop, the feedback loop is probably undamped too. The 100ms
could be considered the “length” of the feedback loop.

If you generate a constant stream of scroll events, the way you begin the
stream can make the regulator oscillate. Since there is no damping, oscillation
will continue until you accelerate or decelerate.

I don’t think we should include damping code in Okular, it is more a QScroller
bug.

At least I don’t know what would work in Okular. Maybe we should reduce the
100ms at high event frequencies, like Nate indicated(?); or maybe it is enough
to add a random component to the 100ms.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Okular-devel mailing list