synaptics click both buttons to get middle?

Jeremy C. Reed reed at reedmedia.net
Tue Aug 29 13:51:34 UTC 2017


On Tue, 15 Aug 2017, Peter Hutterer wrote:

> judging by pictures for the Inspiron 5000, you do *not* have a 
> physical right button, the device only has a left button and the right 
> button is emulated based on the device being detected as clickpad 
> (most likely anyway, check the log for SoftButtonAreas settings).  
> That also limits the middle button emulation, synaptics does not have 
> two-finger middle button emulation on clickpads. And ad-hoc I'm not 
> even sure it could easily do that, the whole multitouch implementation 
> in synaptics is a tad messy. But the default config should give you a 
> middle button area anyway in the center of the touchpad - don't you 
> have that?

Thanks for the response.

My log has:

$ grep -2 -i SoftButtonAreas /var/log/Xorg.0.log
[484187.476] (--) synaptics: DELL0742:00 06CB:7E92 Touchpad: invalid pressure range.  defaulting to 0 - 255
[484187.476] (--) synaptics: DELL0742:00 06CB:7E92 Touchpad: invalid finger width range.  defaulting to 0 - 15
[484187.476] (**) Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
[484187.476] (--) synaptics: DELL0742:00 06CB:7E92 Touchpad: touchpad found
[484187.476] (**) DELL0742:00 06CB:7E92 Touchpad: always reports core events
--
[484187.572] (--) synaptics: SynPS/2 Synaptics TouchPad: buttons: left double triple
[484187.572] (--) synaptics: SynPS/2 Synaptics TouchPad: Vendor 0x2 Product 0x7
[484187.572] (**) Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
[484187.572] (--) synaptics: SynPS/2 Synaptics TouchPad: touchpad found
[484187.572] (**) SynPS/2 Synaptics TouchPad: always reports core events

I have:

$ synclient -l | grep -i ButtonArea
    RightButtonAreaLeft     = 3471
    RightButtonAreaRight    = 0
    RightButtonAreaTop      = 4028
    RightButtonAreaBottom   = 0
    MiddleButtonAreaLeft    = 0 
    MiddleButtonAreaRight   = 0
    MiddleButtonAreaTop     = 0
    MiddleButtonAreaBottom  = 0

$ xinput --list-props "DELL0742:00 06CB:7E92 Touchpad" | grep Soft.Button
        Synaptics Soft Button Areas (334):      614, 0, 761, 0, 0, 0, 0, 0

(I am still confused why xinput and X see two different touchpads for 
the same physical hardware. There is also a third touch device which is 
the display itself.)

Thank you much for the hints. I was able to configure a middle button 
with:

xinput --set-prop "DELL0742:00 06CB:7E92 Touchpad"  "Synaptics Soft Button Areas" "859" 0 "761" 0 "614" "859" "761" 0

resulting in:
Synaptics Soft Button Areas (334):      859, 0, 761, 0, 614, 859, 761, 0

I can now paste by pressing this bottom middle-right area of my 
mousepad.

By the way, I first tried to use percentages like 

xinput --set-prop "DELL0742:00 06CB:7E92 Touchpad"  "Synaptics Soft Button Areas" "70%" 0 "82%" 0 "50%" "70%" "82%" 0

But that resulted in not percent of pad but literal top small area of 
pad available for mouse pointer movement. My synaptics(4) manpage does 
say "values may be given as percentage of the touchpad width or height" 
but I guess that does not work.

Now I need to learn how to use left or right click without an accidental 
paste (because hit middle instead). I may adjust it more so I have some 
unused buffer between middle and right, but don't see way to separate 
middle from left, like:

xinput --set-prop "DELL0742:00 06CB:7E92 Touchpad"  "Synaptics Soft 
Button Areas" "870" 0 "761" 0 "614" "850" "761" 0

My problem there is no physical separation that I can feel. If I could 
use left plus right to emulate middle that would be nice (instead of 
middle I have now), that may be better. I tried settng "Synaptics Middle 
Button Timeout" to different values but no help yet.

(I shouldn't have bought this July 2017 Dell Inspiron 15 5578 laptop. 
Maybe I will consider an external mousepad.)

I found another workaround that may work for me:

xinput --set-prop "DELL0742:00 06CB:7E92 Touchpad" "Synaptics Tap 
Action" 0 0 0 0 0 0 2

So now I can three finger tap anywhere for the paste.

I have some other problems too:

- Multiple times a day my mouse pointer jumps to bottom of display.

- Every couple days, my mouse pad becomes unusable. I cannot move 
pointer. I try changing virtual consoles and back and no fix. I try 
clicking buttons on bottom of pad many times and swipe many times on pad 
and maybe 60 seconds later the mouse pointer starts moving again.

- Multiple times a day my entire left button returns a right click. So I 
try to select a window title bar (in jwm) or a link in firefox (and get 
window menu or firefox menu). I keep moving mouse around and after maybe 
20 seconds the left mouse works again. This has caused problems as some 
right click may use may break what I am working on and I don't notice 
quickly.

Hopefully with new settings above I won't have the problems.

(As a workaround until I got this paste to work, I used xclip to add an 
extra step copy and paste. So I highlight in xterm, then go to xclip 
window and paste there, then I could then paste that into some GTK-based 
app or firefox. I also attempted to set copy and paste properties with 
xterm so highlighted text would go to additional buffers, but it 
required new behavior like keystrokes. I guess for another option is to 
not use xterm but try another terminal emulator that has different 
copy/paste features.)


More information about the xorg mailing list