Some infomation about recent Qt5 mouse handling work.
Weng Xuetian
wengxt at gmail.com
Wed Nov 8 09:22:53 UTC 2017
On Tuesday, 7 November 2017 05:21:38 PST,Jan-Marek Glogowski wrote:
>
> Thanks for the info. It'll definitely be handy at some time.
>
> I found https://doc.qt.io/qt-5/qwheelevent.html#angleDelta, which even
> has a little example and which I kind of copied. The larger problem is
> to understand, what the LO VCL event expects.
>
Just to point out that the code snippet that you point to is not fully
correct, because angleDelta may return value less than 8. This is common on
modern touchpad when you move finger slowly, and that's the root clause why you
don't feel right when using touchpad.
One way to resolve this is to follow the text above the example:
"cumulatively adding the delta" and trigger based on a certain value (not
necessary 120). Still, trigger threshold should be a factor of 120, because
low-precision mouse wheel will generate 120 per click.
Just take your implementation as an example, since you intent to scroll 3 line
per click, you may convert it to 40 unit per line so user can get more fine-
grained control if they're using touchpad or high-precision mouse. And keep
track of the remainder of delta and add it to the delta value for the next qt
wheel event.
Regards,
Xuetian
More information about the LibreOffice
mailing list