Como desabilitar o recurso “tap dragging” no Ubuntu 18.04 (libinput) sem desabilitar “tap to click”?

4

Não consigo descobrir como desativar o recurso "arrastar e soltar" na libinput do Ubuntu 18.04. Ao desativar o "arrastar de toque", quero desabilitar a funcionalidade de arrastar ao usar o toque sem desabilitar a opção "Toque para clicar". Desta forma, quando eu quero arrastar algo, eu teria que realmente clicar no touchpad. Embora possa ser um recurso útil para alguns, eu realmente não preciso disso e ele continua acionando por acidente. Se for de alguma ajuda, eu estou no Macbook Pro, alguma versão do final de 2013 ou início de 2014.

Eu tentei procurar uma resposta e verifiquei o manual do libinput para descobrir a configuração correta. O que eu encontrei foi isto:

Option "TappingDrag" "bool"

Enables or disables drag during tapping behavior ("tap-and-drag"). When enabled, a tap followed by a finger held down causes a single button down only, all motions of that finger thus translate into dragging motion. Tap-and-drag requires option Tapping to be enabled.

Eu tentei definir essa opção em /usr/share/X11/xorg.conf.d/40-libinput.conf :

Section "InputClass"
        Identifier "libinput touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "TappingDrag" "false"
EndSection

Reinicie e toque em arrastar para continuar. Eu também tentei adicionar a mesma TappingDrag -option às seções Touchscreen e Tablet no arquivo de configuração sem sorte. O que estou fazendo errado?

Espero que alguém saiba a resposta, isso está realmente me incomodando. Obrigado antecipadamente!

    
por kobra 05.05.2018 / 18:12

1 resposta

4

Desde que o 18.04 está usando o Xorg em vez do Wayland, você deve poder configurá-lo desta maneira:

Primeiro, encontre o dispositivo:

% xinput list                                                                   
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [slave  pointer  (2)]
⎜   ↳ TPPS/2 IBM TrackPoint                     id=13   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Integrated Camera: Integrated C           id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                    id=14   [slave  keyboard (3)]

Estou em um thinkpad. Seus dispositivos provavelmente são diferentes.

Relacione as propriedades do touchpad:

% xinput list-props 12                                                          
Device 'SynPS/2 Synaptics TouchPad':
    Device Enabled (140):   1
    Coordinate Transformation Matrix (142): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Tapping Enabled (276): 1
    libinput Tapping Enabled Default (277): 0
    libinput Tapping Drag Enabled (278):    1
    ...

Em seguida, desative:

% xinput set-prop 'SynPS/2 Synaptics TouchPad' 'libinput Tapping Drag Enabled' 0

A maneira como eu defino isso permanentemente é colocando em um script que é executado no login.

Espero que ajude. Eu não sei como consertar isso no nível do sistema, nem no Wayland.

    
por Zach Moazeni 13.05.2018 / 00:49