<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW - Acceleration still too slow with medium finger movements"
href="https://bugs.freedesktop.org/show_bug.cgi?id=101139#c15">Comment # 15</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW - Acceleration still too slow with medium finger movements"
href="https://bugs.freedesktop.org/show_bug.cgi?id=101139">bug 101139</a>
from <span class="vcard"><a class="email" href="mailto:peter.hutterer@who-t.net" title="Peter Hutterer <peter.hutterer@who-t.net>"> <span class="fn">Peter Hutterer</span></a>
</span></b>
<pre>fwiw, I went through the touchpad acceleration code again and could not find
anything obviously wrong. An important definition: a 'normalized' coordinate is
one that's converted from device units to units equivalent to a 1000dpi
standard mouse.
* starting point: tp_gesture_post_pointer_motion()
* tp_get_delta() returns a normalised delta
* this delta is passed to tp_filter_motion(), where it is converted back to
device units [the double-conversion is a leftover]. Only difference: the y axis
is pushed to the same resolution as the x axis so we can assume a delta in a
single coordinate system. That's the 'raw' variable.
* 'raw', in units/mm, is passed to filter_dispatch() which calls
accelerator_filter_post_normalized (see accelerator_interface_touchpad)
* 'raw' is passed further to accelerator_filter_generic() and
calculate_acceleration_factor().
* that calculates the velocity (in units/us) and passes it to
calculate_acceleration()
* that then calls the profile: touchpad_accel_profile_linear()
* the profile converts the speed (in units/us) to mm/s for easier understanding
and then applies the linear-ish accel function that calculates the accel
factor.
* that factor is passed back up and applied to the raw input delta
(accelerator_filter_post_normalized)
* the input delta is converted to 1000dpi normalized units and we finish
filter_dispatch() and send the accelerated delta to the caller
So aside from the slightly confusing conversions between systems, there is
nothing bleedingly obviously wrong.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>