summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/evdev-mt-touchpad.c27
1 files changed, 19 insertions, 8 deletions
diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
index d8b23345..912a0f0f 100644
--- a/src/evdev-mt-touchpad.c
+++ b/src/evdev-mt-touchpad.c
@@ -1991,17 +1991,28 @@ tp_init_hysteresis(struct tp_dispatch *tp)
{
int res_x, res_y;
+ if (tp->device->model_flags & EVDEV_MODEL_CYAPA)
+ goto want_hysteresis;
+
+ if (tp->device->model_flags & EVDEV_MODEL_ALPS_RUSHMORE)
+ goto want_hysteresis;
+
+ if (tp->semi_mt &&
+ (tp->device->model_flags & EVDEV_MODEL_SYNAPTICS_SERIAL_TOUCHPAD))
+ goto want_hysteresis;
+
+ tp->hysteresis_margin.x = 0;
+ tp->hysteresis_margin.y = 0;
+
+ return;
+
+want_hysteresis:
res_x = tp->device->abs.absinfo_x->resolution;
res_y = tp->device->abs.absinfo_y->resolution;
- if (tp->device->model_flags &
- (EVDEV_MODEL_CYAPA|EVDEV_MODEL_ALPS_RUSHMORE)) {
- tp->hysteresis_margin.x = res_x/2;
- tp->hysteresis_margin.y = res_y/2;
- } else {
- tp->hysteresis_margin.x = 0;
- tp->hysteresis_margin.y = 0;
- }
+ tp->hysteresis_margin.x = res_x/2;
+ tp->hysteresis_margin.y = res_y/2;
+ return;
}
static int