On 02/23/2012 05:07 PM, Peter Hutterer wrote:
On Thu, Feb 23, 2012 at 01:02:18PM -0800, Chase Douglas wrote:
Clickpad press-and-drag with two fingers will break click actions.
Disable them for these devices until a good solution is found for
letting both functionalities co-exist.
Signed-off-by: Chase Douglas<chase.doug...@canonical.com>
---
src/synaptics.c | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/src/synaptics.c b/src/synaptics.c
index e20d6a8..e90ec9e 100644
--- a/src/synaptics.c
+++ b/src/synaptics.c
@@ -2469,7 +2469,7 @@ update_hw_button_state(const InputInfoPtr pInfo, struct
SynapticsHwState *hw,
hw->middle |= HandleMidButtonEmulation(priv, hw, now, delay);
/* Fingers emulate other buttons */
- if(hw->left&& hw->numFingers>= 1){
+ if(!para->clickpad&& hw->left&& hw->numFingers>= 1){
handle_clickfinger(para, hw);
}
@@ -2644,10 +2644,12 @@ HandleTouches(InputInfoPtr pInfo, struct
SynapticsHwState *hw)
Bool restart_touches = FALSE;
int i;
- if (para->click_action[F3_CLICK1] || para->tap_action[F3_TAP])
+ if ((!para->clickpad&& para->click_action[F3_CLICK1]) ||
+ para->tap_action[F3_TAP])
min_touches = 4;
- else if (para->click_action[F2_CLICK1] || para->tap_action[F2_TAP] ||
- para->scroll_twofinger_vert || para->scroll_twofinger_horiz)
+ else if ((!para->clickpad&& para->click_action[F2_CLICK1]) ||
+ para->tap_action[F2_TAP] || para->scroll_twofinger_vert ||
+ para->scroll_twofinger_horiz)
min_touches = 3;
/* Count new number of active touches */
--
1.7.9
wouldn't a better/simpler approach be to set the click_actions to 0 on a
clickpad? less conditionals, can be documented in the man page and if users
enable them it's their fault (maybe they even like the behaviour).
Hmmm... Yeah, that might be better... I'll switch to that for the next
series.
-- Chase
_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel