Disabilitazione "back" per una trackball Logitech


9

Ho una trackball Logitech Marble Mouse con quattro pulsanti:

inserisci qui la descrizione dell'immagine

Usando le istruzioni qui , ho 50-marblemouse.conf(xorg.conf) impostato in modo che tenendo premuto il pulsante "indietro" mi permetta di scorrere:

Section "InputClass"
        Identifier  "Marble Mouse"
        MatchProduct "Logitech USB Trackball"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
        Option "EmulateWheel" "true"
        Option "EmulateWheelButton" "8"
EndSection

Tuttavia, a volte "tenere" si registra come un clic su "indietro", il che è super fastidioso quando sto navigando su una pagina web. È possibile utilizzare il pulsante per scorrere ma disabilitare il singolo clic?

La solita soluzione sembra essere quella di utilizzare il pulsante "avanti" per lo scorrimento, dal momento che i clic su di esso sono per lo più innocui, ma trovo di dover fare clic con l'anulare molto più imbarazzante che premere il pulsante indietro.



Prego. Vediamo se fa qualcosa, molte domande rimangono senza risposta qui.
Revetahw dice di reintegrare Monica il

Qualcuno delle risposte ti ha aiutato? Devo premiare la taglia o lasciarla andare.
Revetahw dice di reintegrare Monica il

@Fiksdal Sto viaggiando questa settimana e non ho accesso al mio desktop, quindi non sono stato in grado di provarli ... J.Cole's sembra il più promettente però.
lambshaanxy,

Tutto a posto. Nessun problema.
Revetahw dice di reintegrare Monica il

Risposte:


2

Penso che l'opzione che stai cercando sia ButtonMapping. Ho avuto una funzione fastidiosa simile con il mio mouse ( https://www.kensington.com/en/no/4493/k72327eu/slimblade-trackball ), quindi l' ho capito poco fa.

L'opzione "EmulateWheelButton" dovrebbe funzionare anche se si disabilita il pulsante o si riassegna la mappatura ...

Ora, l'ho provato solo con xinput su evdev. È molto più veloce provare le cose con xinput e quindi puoi semplicemente aggiungere uno script alle tue "Applicazioni di avvio" invece di dover modificare / etc / X11 / e riavviare X più volte.

Quindi questo dovrebbe essere tutto ciò di cui hai bisogno in xorg.d / mouse.conf (le righe commentate sono ciò che dovrebbe essere necessario se non vuoi usare uno script di accesso per farlo per utente), anche se potresti non averne bisogno a tutto se usi xinput:

Section "InputDevice"
    Identifier  "Configured Mouse"
    Driver    "evdev"
    Option    "Device"                "/dev/input/mice"
    Option    "Protocol"              "auto"
    #Option    "EmulateWheel"          "1"
    #Option    "EmulateWheelButton"    "8"
    #Option    "ButtonMapping"        "1 2 3 4 5 6 7 0 9 10 11 12"
EndSection

Ecco cosa ho fatto per capire la mia soluzione (sostituisci ovviamente il mio dispositivo con il tuo dispositivo nei seguenti comandi):

Mostra dispositivi:

$ xinput list
Virtual core pointer                        id=2    [master pointer  (3)]
  ↳ Virtual core XTEST pointer                  id=4    [slave  pointer  (2)]
  ↳ ELAN Touchscreen                            id=11   [slave  pointer  (2)]
  ↳ SynPS/2 Synaptics TouchPad                  id=13   [slave  pointer  (2)]
  ↳ Kensington Kensington Slimblade Trackball   id=18   [slave  pointer  (2)]

Scopri quali proprietà sono supportate per quel dispositivo:

$ xinput list-props "Kensington Kensington Slimblade Trackball"
Device 'Kensington Kensington Slimblade Trackball':
    Device Enabled (142):        1
    Coordinate Transformation Matrix (144):        1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    Device Accel Profile (273):        0
    Device Accel Constant Deceleration (274):        1.000000
    Device Accel Adaptive Deceleration (275):        1.000000
    Device Accel Velocity Scaling (276):        10.000000
    Device Product ID (260):        1149, 8257
    Device Node (261):        "/dev/input/event17"
    Evdev Axis Inversion (277):        0, 0
    Evdev Axes Swap (279):        0
    Axis Labels (280):        "Rel X" (152), "Rel Y" (153), "Rel Vert Wheel" (573)
    Button Labels (281):        "Button Left" (145), "Button Middle" (146), "Button Right" (147), "Button Wheel Up" (148), "Button Wheel Down" (149), "Button Horiz Wheel Left" (150), "Button Horiz Wheel Right" (151), "Button Side" (679), "Button Unknown" (263), "Button Unknown" (263), "Button Unknown" (263), "Button Unknown" (263)
    Evdev Scrolling Distance (282):        1, 1, 1
    Evdev Middle Button Emulation (283):        0
    Evdev Middle Button Timeout (284):        50
    Evdev Third Button Emulation (285):        0
    Evdev Third Button Emulation Timeout (286):        1000
    Evdev Third Button Emulation Button (287):        3
    Evdev Third Button Emulation Threshold (288):        20
    Evdev Wheel Emulation (289):        1
    Evdev Wheel Emulation Axes (290):        0, 0, 4, 5
    Evdev Wheel Emulation Inertia (291):        10
    Evdev Wheel Emulation Timeout (292):        200
    Evdev Wheel Emulation Button (293):        8
    Evdev Drag Lock Buttons (294):        0

Ora proviamo:

$ xinput set-button-map "Kensington Kensington Slimblade Trackball" 1 2 3 4 5 6 7 0 9 10 11 12
$ xinput set-prop "Kensington Kensington Slimblade Trackball" "Evdev Wheel Emulation" 1
$ xinput set-prop "Kensington Kensington Slimblade Trackball" "Evdev Wheel Emulation Button" 8

Ora il mio pulsante in alto a destra funziona solo come scorrimento automatico invece del comportamento esasperante della schiena!


1

Ecco la mia configurazione per questa trackball molto buona, su Ubuntu, nel 2009. Spero che funzioni ancora, forse avrai alcune differenze con "Driver" e "Dispositivo". Tuttavia, le opzioni dei pulsanti dovrebbero essere le stesse.

Code: Section "InputDevice"
Identifier    "Marble Mouse"
Driver        "mouse"
Option        "CorePointer"
Option        "Device"   "/dev/input/mice"
Option        "Protocol"        "ExplorerPS/2"
Option        "Emulate3Buttons"    "true"
Option        "Buttons"        "9"
Option        "EmulateWheel"        "1"
Option        "EmulateWheelButton"    "8"
Option        "YAxisMapping"        "4 5"
Option        "XAxisMapping"        "6 7"
EndSection

Quindi abbiamo:

  • Il terzo pulsante si trova su "Avanti" (9), molto comodo.
  • la ruota di emulazione è su "Indietro" (8)
  • nota che ho definito entrambi gli assi X e Y, il che significa che quando premi "Indietro" con il pollice, puoi scorrere in entrambe le direzioni usando la palla, come con un touchpad.

0

Usando le istruzioni "Esempio di configurazione n. 3, rinuncia al pulsante" Indietro "fornito dal tuo link , puoi rimappare il pulsante Indietro per renderlo più innocuo, come il clic con il pulsante destro del mouse.

Non so esattamente come lo unisci con il tuo file di configurazione sopra.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.