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 <[email protected]>
---
 src/evdev-mt-touchpad.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
index 81a56a05..8bb0661b 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 7mm */
+       mm.x = min(8, width * 0.08);
        edges = evdev_device_mm_to_units(device, &mm);
        tp->palm.left_edge = edges.x;
 
-- 
2.13.6

_______________________________________________
wayland-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to