when using xf86-input-synaptics 1.5.0-1 on Archlinux with the MacBook
Air 4,2, the touchpad on the macbook air creates a button3
press, if I press the touchpad [=button1] and move a finger, which is not the
expected "button 1 press + move" behaviour.
This breaks moving around stuff when pressing the touchpad.
A workaround is to use Tap,Tap and then move, which is cumbersome.
I think this may be caused by the ClickFinger settings, try synclient ClickFinger2=0.
Using [21:00] brief:type% synclient ClickFinger2=0
I get Button4/5 events when click-holding and moving the other finger:
ButtonRelease event, serial 27, synthetic NO, window 0x5800001,
root 0xbc, subw 0x0, time 90346286, (312,284), root:(2956,304),
state 0x900, button 4, same_screen YES
ButtonPress event, serial 27, synthetic NO, window 0x5800001,
root 0xbc, subw 0x0, time 90346487, (312,284), root:(2956,304),
state 0x100, button 5, same_screen YES
which is a bit better, but still not the expected behaviour.
what I am missing as well is the zones click, which I think mtrack supports: clicking left on the pad should generate button one, middle button 2 and right button 3, which I think the touchpad itself supports.
Here's the full synclient output:
[22:45] brief:type% synclient
LeftEdge = 108
RightEdge = 1172
TopEdge = 68
BottomEdge = 732
FingerLow = 25
FingerHigh = 30
FingerPress = 257
MaxTapTime = 180
MaxTapMove = 66
MaxDoubleTapTime = 180
SingleTapTimeout = 180
ClickTime = 100
FastTaps = 0
EmulateMidButtonTime = 75
EmulateTwoFingerMinZ = 283
EmulateTwoFingerMinW = 7
VertScrollDelta = 30
HorizScrollDelta = 30
VertEdgeScroll = 0
HorizEdgeScroll = 0
CornerCoasting = 0
VertTwoFingerScroll = 1
HorizTwoFingerScroll = 0
MinSpeed = 1
MaxSpeed = 1.75
AccelFactor = 0.132538
TrackstickSpeed = 40
EdgeMotionMinZ = 30
EdgeMotionMaxZ = 160
EdgeMotionMinSpeed = 1
EdgeMotionMaxSpeed = 120
EdgeMotionUseAlways = 0
TouchpadOff = 2
LockedDrags = 0
LockedDragTimeout = 5000
RTCornerButton = 0
RBCornerButton = 0
LTCornerButton = 0
LBCornerButton = 0
TapButton1 = 1
TapButton2 = 2
TapButton3 = 3
ClickFinger1 = 1
ClickFinger2 = 0
ClickFinger3 = 2
CircularScrolling = 0
CircScrollDelta = 0.1
CircScrollTrigger = 0
CircularPad = 0
PalmDetect = 1
PalmMinWidth = 10
PalmMinZ = 200
CoastingSpeed = 20
CoastingFriction = 50
PressureMotionMinZ = 30
PressureMotionMaxZ = 160
PressureMotionMinFactor = 1
PressureMotionMaxFactor = 1
GrabEventDevice = 1
TapAndDragGesture = 1
AreaLeftEdge = 0
AreaRightEdge = 0
AreaTopEdge = 0
AreaBottomEdge = 0
(In reply to comment #2)
> I get Button4/5 events when click-holding and moving the other finger:
that appears to be two-finger scrolling getting in the way (4/5 is scrolling)
> what I am missing as well is the zones click, which I think mtrack supports:
> clicking left on the pad should generate button one, middle button 2 and right
> button 3, which I think the touchpad itself supports.
we don't have that part in the driver yet, sorry. patches have appeared here and there (google for clickpad) but none have ever made it into a mergeable format.
You are absolutely right, synclient VertTwoFingerScroll=0 and it works.
I guess scrolling should be disabled, if the mouse button is pressed.
Would you accept such a patch?
What requirements are given for the area patch to be included?
(In reply to comment #4)
> I guess scrolling should be disabled, if the mouse button is pressed.
> Would you accept such a patch?
yes, that seems like a sensible solution, provided we can tell in the driver (not 100% sure here but as long as we have a physical button, it should work)
> What requirements are given for the area patch to be included?
someone just needs to dig the last version up (if you can find the thread on the xorg-devel list, it should also have my last comments) and then address the review comments. I think it was pretty close anyway.
side-effect of the clickpad-magic behaviours, resolved with
Merge: defc1d0 fee18d8
Author: Peter Hutterer <email@example.com>
Date: Wed Mar 14 08:48:00 2012 +1000
Merge branch 'clickpad-v3'