diff options
author | Chris Bagwell <chris@cnpbagwell.com> | 2010-08-18 22:09:45 -0500 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2010-08-20 10:49:57 +1000 |
commit | a6ca4d2523904b7ce49edc29ba408979bdf0d45e (patch) | |
tree | 6c2b968234cd45bdd928b37f814543e1036d0ad7 /src/synapticsstr.h | |
parent | b774a1dba2f1f45c94fe898fe8b5ce258cbcddfc (diff) |
Reset X/Y hist on multi finger transition to fix jumps
Most modern touchpads track 1st finger during multi-touch. If first finger
is lifted then a jump will occur as X/Y transition to next finger location.
Resetting X/Y history as each finger is lifted will hide this transition.
Synaptics hw specs claim older hardware report X/Y values that are average
point between multi-fingers which can cause unwanted jump. Reset X/Y
history during transition to new fingers to hide this as well.
Signed-off-by: Chris Bagwell <chris@cnpbagwell.com>
Tested-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'src/synapticsstr.h')
-rw-r--r-- | src/synapticsstr.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/synapticsstr.h b/src/synapticsstr.h index b4a72aa..caa0476 100644 --- a/src/synapticsstr.h +++ b/src/synapticsstr.h @@ -218,6 +218,7 @@ typedef struct _SynapticsPrivateRec int palm; /* Set to true when palm detected, reset to false when palm/finger contact disappears */ int prev_z; /* previous z value, for palm detection */ + int prevFingers; /* previous numFingers, for transition detection */ int avg_width; /* weighted average of previous fingerWidth values */ double horiz_coeff; /* normalization factor for x coordintes */ double vert_coeff; /* normalization factor for y coordintes */ |