summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2014-11-28 10:08:02 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2014-12-02 10:16:31 +1000
commit7e3cc15819f5599ee2014dc8381ef1bcb4c2ac73 (patch)
treea3a9ff9b7a60fb9220b47c1904556b00e826b66a
parent4f84bad9eb5ee1f4ef2928d928016d9daeeaf9e1 (diff)
downloadlibinput-7e3cc15819f5599ee2014dc8381ef1bcb4c2ac73.tar.gz
Move DEFAULT_MOUSE_DPI to filter.h
The filter code is what relies on some default dpi configuration to apply pointer acceleration and expects the input coordinates to be pre-scaled to that resolution. Let's move the define here so we can use it from the touchpad code too. No functional changes. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
-rw-r--r--src/evdev-mt-touchpad.c13
-rw-r--r--src/evdev.c2
-rw-r--r--src/filter.h3
3 files changed, 8 insertions, 10 deletions
diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
index 8f76ddb8..e29b2527 100644
--- a/src/evdev-mt-touchpad.c
+++ b/src/evdev-mt-touchpad.c
@@ -932,17 +932,14 @@ tp_init_accel(struct tp_dispatch *tp, double diagonal)
/*
* Not all touchpads report the same amount of units/mm (resolution).
- * Normalize motion events to a resolution of 15.74 units/mm
- * (== 400 dpi) as base (unaccelerated) speed. This also evens out any
- * differences in x and y resolution, so that a circle on the
+ * Normalize motion events to the default mouse DPI as base
+ * (unaccelerated) speed. This also evens out any differences in x
+ * and y resolution, so that a circle on the
* touchpad does not turn into an elipse on the screen.
- *
- * We pick 400dpi as thats one of the many default resolutions
- * for USB mice, so we end up with a similar base speed on the device.
*/
if (res_x > 1 && res_y > 1) {
- tp->accel.x_scale_coeff = (400/25.4) / res_x;
- tp->accel.y_scale_coeff = (400/25.4) / res_y;
+ tp->accel.x_scale_coeff = (DEFAULT_MOUSE_DPI/25.4) / res_x;
+ tp->accel.y_scale_coeff = (DEFAULT_MOUSE_DPI/25.4) / res_y;
} else {
/*
* For touchpads where the driver does not provide resolution, fall
diff --git a/src/evdev.c b/src/evdev.c
index e4d79c26..19b861f4 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -42,8 +42,6 @@
#define DEFAULT_AXIS_STEP_DISTANCE 10
#define DEFAULT_MIDDLE_BUTTON_SCROLL_TIMEOUT 200
-/* The HW DPI rate we normalize to before calculating pointer acceleration */
-#define DEFAULT_MOUSE_DPI 400
enum evdev_key_type {
EVDEV_KEY_TYPE_NONE,
diff --git a/src/filter.h b/src/filter.h
index 9b126183..e96212a3 100644
--- a/src/filter.h
+++ b/src/filter.h
@@ -28,6 +28,9 @@
#include <stdbool.h>
#include <stdint.h>
+/* The HW DPI rate we normalize to before calculating pointer acceleration */
+#define DEFAULT_MOUSE_DPI 400
+
struct motion_params {
double dx, dy; /* in units/ms @ DEFAULT_MOUSE_DPI resolution */
};