Rolagem horizontal tratada como clique direito em aplicativos Java

14

Eu habilitei a rolagem horizontal para o meu touchpad no Ubuntu 11.04, mas ao usá-lo em aplicativos Java (NetBeans no meu caso), ele é como um clique direito.

A rolagem horizontal funciona perfeitamente em todos os aplicativos que não estão escritos em Java.

O que posso fazer para funcionar corretamente?

    
por JLinden 27.06.2011 / 13:40

2 respostas

4

Isso é este bug . Você pode consertá-lo conforme descrito lá, executando synclient HorizTwoFingerScroll=0 (a rolagem de dois dedos ainda funcionará bem).

Você pode adicionar o comando na inicialização com a caixa de diálogo "aplicativos de inicialização".

    
por NoBugs 25.11.2013 / 05:23
2

Possível solução alternativa foi discutida em UbuntuForums - você pode executar manualmente um script para ativar ou desativar o clique com o botão direito do mouse dependendo se você estiver usando um aplicativo baseado em JAVA.

Você poderia, por exemplo, conectar cada um dos scripts como Atalhos de teclado, por exemplo, CTRL + ALT + E para ativar e CTRL + ALT + R para desativar

Crie um script chamado "hscroll_disable" contendo:

DEVICE_NAME='TPPS/2 IBM TrackPoint'
PROP_NAME='Evdev Wheel Emulation Axes'

xinput set-int-prop "$DEVICE_NAME" "$PROP_NAME" 8 4 5 4 5
if [[ $? -eq 0 ]] ; then
  zenity --info --text "Horizontal Scrolling Disabled"
else
  zenity --error --text "Error disabling horizontal scroll."
fi

Crie um script chamado "hscroll_disable" contendo:

DEVICE_NAME='TPPS/2 IBM TrackPoint'
PROP_NAME='Evdev Wheel Emulation Axes'

xinput set-int-prop "$DEVICE_NAME" "$PROP_NAME" 8 6 7 4 5
if [[ $? -eq 0 ]] ; then
  zenity --info --text "Horizontal Scrolling Enabled"
else
  zenity --error --text "Error enabling horizontal scroll."
fi

Conceda a permissão de execução a ambos os scripts, por exemplo

chmod +x hscroll_disable
chmod +x hscroll_enable

As duas partes importantes dos scripts são "DEVICE_NAME" e "PROP_NAME"

Você pode descobrir qual nome de dispositivo usar no seu sistema da seguinte forma:

xinput list --short

Isso gerará uma saída semelhante a:

"Virtual core pointer"  id=0    [XPointer]
"Virtual core keyboard" id=1    [XKeyboard]
"ThinkPad Extra Buttons"        id=2    [XExtensionKeyboard]
"AT Translated Set 2 keyboard"  id=3    [XExtensionKeyboard]
"Video Bus"     id=4    [XExtensionKeyboard]
"Macintosh mouse button emulation"      id=5    [XExtensionPointer]
"TPPS/2 IBM TrackPoint" id=6    [XExtensionPointer]

Em seguida, localize o nome da propriedade:

xinput list-props "TPPS/2 IBM TrackPoint"

Isso gerará uma saída semelhante a:

Device 'TPPS/2 IBM TrackPoint':
        Device Enabled (93):            1
        Evdev Axis Inversion (230):             0, 0
        Evdev Reopen Attempts (227):            10
        Evdev Axis Calibration (228):           
        Evdev Axes Swap (229):          0
        Evdev Middle Button Emulation (231):            1
        Evdev Middle Button Timeout (232):              50
        Evdev Wheel Emulation (233):            1
        Evdev Wheel Emulation Axes (234):               6, 7, 4, 5
        Evdev Wheel Emulation Inertia (235):            10
        Evdev Wheel Emulation Timeout (236):            200
        Evdev Wheel Emulation Button (237):             2
        Evdev Drag Lock Buttons (238):          0

Solução reproduzida acima de "vace117"

    
por fossfreedom 29.08.2011 / 17:01

Tags