touchpad: move edge palm init to separate helper
authorPeter Hutterer <peter.hutterer@who-t.net>
Mon, 3 Apr 2017 03:31:50 +0000 (13:31 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Fri, 21 Apr 2017 00:03:16 +0000 (10:03 +1000)
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
src/evdev-mt-touchpad.c

index 93223938064b2f05d87a9ad5d98263aa58a9be75..21fdc46248aed69dab120f02fe5219d1067f26a1 100644 (file)
@@ -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