From 6ea69c2b3d18ea3994a9577e52060e992d46cc70 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 12 Jun 2015 15:31:56 +1000 Subject: [PATCH] filter: reduce deceleration to minimal speeds only Deceleration at low speeds is intended to enhance precision when moving the pointer slowly. However, the adaptive deceleration we used was badly calibrated, at slow-but-normal speeds the pointer became too slow to manouver. We don't want to drop deceleration completely, the subpixel precision it provides is useful. And it also helps those that can't move a 1000dpi mouse by exactly one unit. Make the adaptive deceleration steeper so it only kicks in at extremely slow motions and defaults to 1 at anything resembling normal movement (i.e. pointer moves like the physical device does). Signed-off-by: Peter Hutterer Reviewed-by: Hans de Goede --- src/filter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/filter.c b/src/filter.c index b37ca766..1e057823 100644 --- a/src/filter.c +++ b/src/filter.c @@ -387,7 +387,7 @@ pointer_accel_profile_linear(struct motion_filter *filter, const double incline = accel_filter->incline; double factor; - s1 = min(1, 0.3 + speed_in * 4); + s1 = min(1, 0.3 + speed_in * 10); s2 = 1 + (speed_in - threshold) * incline; factor = min(max_accel, s2 > 1 ? s2 : s1);