summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2017-10-23 15:30:41 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2017-10-24 08:28:32 +1000
commit3e9e0e2eb18f0eae5ffe2be756903d92b8b88f75 (patch)
tree6eab7603c09a6f3fe108b3640a07c17e9b371f33
parent017d6bb903cd45efb9340d1837cbc8a2c9899ec0 (diff)
touchpad: cap the edge palm detection zones at 8mm
The main purpose of the edge zone is to detect palms in the area where we cannot assume a full finger size and thus cannot use any other palm detection mechanism. 8mm should be large enough that a finger should be detected based on other properties (size, pressure, ...). https://bugs.freedesktop.org/show_bug.cgi?id=103330 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Martin <consume.noise@gmail.com>
-rw-r--r--src/evdev-mt-touchpad.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
index 81a56a05..2ef6ae45 100644
--- a/src/evdev-mt-touchpad.c
+++ b/src/evdev-mt-touchpad.c
@@ -2646,8 +2646,8 @@ tp_init_palmdetect_edge(struct tp_dispatch *tp,
if (width < 70.0)
return;
- /* palm edges are 8% of the width on each side */
- mm.x = width * 0.08;
+ /* palm edges are 8% of the width on each side up to a max of 8mm */
+ mm.x = min(8, width * 0.08);
edges = evdev_device_mm_to_units(device, &mm);
tp->palm.left_edge = edges.x;