summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChase Douglas <chase.douglas@canonical.com>2012-03-21 12:58:28 -0700
committerPeter Hutterer <peter.hutterer@who-t.net>2012-03-22 14:30:35 +1000
commit73ec252b6f2d25cc49557b1d3789b459b60b8d4e (patch)
treec286315002ec08a29579812c1d32a71751350c4f
parent93c72117e169624854f6eb63591702d7e4dae97c (diff)
Fix clickfinger actions when buttons other than 1 are reported
The "old" logical state now holds the clickfinger action button. In order to check for proper clickpad press transition, we need to check if any of the left, middle, and right logical button states are pressed. Signed-off-by: Chase Douglas <chase.douglas@canonical.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--src/synaptics.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/synaptics.c b/src/synaptics.c
index 9f214e5..e22929b 100644
--- a/src/synaptics.c
+++ b/src/synaptics.c
@@ -2779,7 +2779,8 @@ update_hw_button_state(const InputInfoPtr pInfo, struct SynapticsHwState *hw,
/* Fingers emulate other buttons. ClickFinger can only be
triggered on transition, when left is pressed
*/
- if(hw->left && !old->left && hw->numFingers >= 1) {
+ if(hw->left && !old->left && !old->middle && !old->right &&
+ hw->numFingers >= 1) {
handle_clickfinger(priv, hw);
}