[PATCH xf86-input-synaptics 2/4] Fix clickfinger actions when buttons other than 1 are reported

Chase Douglas chase.douglas at canonical.com
Wed Mar 21 12:58:28 PDT 2012


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 at canonical.com>
---
 src/synaptics.c |    3 ++-
 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);
     }
 
-- 
1.7.9.1



More information about the xorg-devel mailing list