[PATCH libinput 4/6] touchpad: move edge palm init to separate helper

Peter Hutterer peter.hutterer at who-t.net
Fri Apr 21 00:05:19 UTC 2017


Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
---
 src/evdev-mt-touchpad.c | 30 ++++++++++++++++++------------
 1 file changed, 18 insertions(+), 12 deletions(-)

diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
index 9322393..21fdc46 100644
--- a/src/evdev-mt-touchpad.c
+++ b/src/evdev-mt-touchpad.c
@@ -2224,23 +2224,14 @@ tp_init_dwt(struct tp_dispatch *tp,
 	return;
 }
 
-static void
-tp_init_palmdetect(struct tp_dispatch *tp,
-		   struct evdev_device *device)
+static inline void
+tp_init_palmdetect_edge(struct tp_dispatch *tp,
+			struct evdev_device *device)
 {
 	double width, height;
 	struct phys_coords mm = { 0.0, 0.0 };
 	struct device_coords edges;
 
-	tp->palm.right_edge = INT_MAX;
-	tp->palm.left_edge = INT_MIN;
-
-	if (device->tags & EVDEV_TAG_EXTERNAL_TOUCHPAD &&
-	    !tp_is_tpkb_combo_below(device))
-		return;
-
-	tp->palm.monitor_trackpoint = true;
-
 	evdev_device_get_size(device, &width, &height);
 
 	/* Enable palm detection on touchpads >= 70 mm. Anything smaller
@@ -2256,8 +2247,23 @@ tp_init_palmdetect(struct tp_dispatch *tp,
 	mm.x = width * 0.95;
 	edges = evdev_device_mm_to_units(device, &mm);
 	tp->palm.right_edge = edges.x;
+}
+
+static void
+tp_init_palmdetect(struct tp_dispatch *tp,
+		   struct evdev_device *device)
+{
+
+	tp->palm.right_edge = INT_MAX;
+	tp->palm.left_edge = INT_MIN;
+
+	if (device->tags & EVDEV_TAG_EXTERNAL_TOUCHPAD &&
+	    !tp_is_tpkb_combo_below(device))
+		return;
 
 	tp->palm.monitor_trackpoint = true;
+
+	tp_init_palmdetect_edge(tp, device);
 }
 
 static void
-- 
2.9.3



More information about the wayland-devel mailing list