Horizontales Scrollen wird in Java-Anwendungen als Rechtsklick behandelt

14

Ich habe horizontales Scrollen für mein Touchpad in Ubuntu 11.04 aktiviert, aber wenn ich es in Java-Anwendungen (in meinem Fall NetBeans) verwende, ist es stattdessen ein Rechtsklick.

Das horizontale Scrollen funktioniert perfekt in allen Anwendungen, die nicht in Java geschrieben sind.

Was kann ich tun, damit es richtig funktioniert?

JLinden
quelle

Antworten:

4

Das ist dieser Bug . Sie können das Problem wie dort beschrieben beheben, indem Sie den synclient HorizTwoFingerScroll=0Befehl ausführen (das Scrollen mit zwei Fingern funktioniert weiterhin einwandfrei).

Sie können den Befehl beim Start mit dem Dialogfeld "Startanwendungen" hinzufügen.

NoBugs
quelle
2

Mögliche Problemumgehung wurde in UbuntuForums erörtert - Sie führen entweder manuell ein Skript aus, um den Rechtsklick zu aktivieren oder zu deaktivieren, je nachdem, ob Sie eine JAVA-basierte Anwendung verwenden.

Sie könnten - zum Beispiel eine Verbindung jedes der Skripte als Tastaturkürzel zB CTRL+ ALT+ Eaktivieren und CTRL+ ALT+ Rzu deaktivieren

Erstellen Sie ein Skript mit dem Namen "hscroll_disable", das Folgendes enthält:

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

Erstellen Sie ein Skript mit dem Namen "hscroll_disable", das Folgendes enthält:

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

Geben Sie beiden Skripten die Berechtigung zum Ausführen

chmod +x hscroll_disable
chmod +x hscroll_enable

Die beiden wichtigen Teile der Skripte sind "DEVICE_NAME" und "PROP_NAME".

So können Sie herausfinden, welchen Gerätenamen Sie auf Ihrem System verwenden möchten:

xinput list --short

Dies ergibt eine Ausgabe ähnlich der folgenden:

"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]

So finden Sie den Eigenschaftsnamen:

xinput list-props "TPPS/2 IBM TrackPoint"

Dies ergibt eine Ausgabe ähnlich der folgenden:

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

Oben wiedergegebene Lösung aus "vace117"

fossfreedom
quelle