Scorri con il middlepoint e il middle-click del trackpoint in Linux


0

MODIFICARE: TL; Versione DR (kinda): su un mouse con tre pulsanti, è possibile disabilitare il pulsante centrale effettivo mentre si ha ancora l'emulazione del pulsante centrale in xorg?

Versione completa:

Ho comprato una tastiera Lenovo con trackpoint e sto cercando di farla funzionare bene su Linux / xorg. Il problema è che ho notato che quando si fa clic con il tasto di scorrimento centrale (si tiene premuto il tasto centrale e si usa il trackpoint per scorrere) si invia prima un evento button down centrale che naturalmente incolla il testo o apre collegamenti o qualcosa, a seconda di dove sei. Lo scorrimento funziona bene ma è inutile in questo modo.

Quindi, ho provato a disabilitare il clic centrale con xinput set-button-map <id> 1 0 3. Ora lo scorrimento funziona e non c'è un evento button-down pre-scroll, ma non posso nemmeno usare il middle click quando voglio.

Quindi, pensavo di abilitare l'emulazione del pulsante centrale. Apparentemente disabilitando il tasto centrale si disabilita anche l'emulazione di esso perché l'emulazione funziona se riattivo il clic centrale, ma non altrimenti.

Così, ho pensato di poter vivere senza l'uso di middle-click e Firefox può aprire i link in una nuova scheda con CTRL + clic. Tuttavia, questo funziona solo per collegamenti regolari. Se hai un link strano, sembra che l'unico modo per aprire il link in una nuova scheda sia il clic centrale (che funziona anche se ctrl + clic non ... wtf?). Inoltre, un ctrl + clic con una sola mano richiede più lavoro di sinistra + tasto destro del mouse.

Cosa fare? Penso che preferirei disabilitare gli eventi del middle-click che arrivano dal vero tasto centrale mentre si ha ancora l'emulazione del middle-click e del middle-click. O forse in qualche modo programmare il pulsante centrale in modo che non faccia nulla sul pulsante. Quindi se il pulsante viene tenuto premuto e il trackpoint viene spostato, lo scorrimento avviene. Se non succede nulla tra il pulsante in giù e il pulsante in alto, quindi un evento di clic intermedio viene inviato su pulsante. In realtà questa seconda soluzione è probabilmente l'ideale.

Anche altri suggerimenti sono ben accetti. Nota: non riesco a passare al browser Chrome (se funzionasse, non lo so) perché non mi piacciono le mie strane mappature di tastiera. Inoltre preferirei una correzione più "globale".

Risposte:


1

Ok, apparentemente questo è già stato implementato. Uno deve solo dire xinput set-prop <device-id> "Evdev Wheel Emulation" 1 (Mi chiedo perché ha quasi funzionato senza). Quindi è possibile controllare il timeout in modo che un clic più breve di quello sia solo un normale clic intermedio.

Ma non è perfetto: se inizi a scorrere prima del timeout, invia comunque un evento click. Vedo due soluzioni che non implicano l'hacking del driver: 1) imposta il timeout su 0 e usa l'emulazione del clic medio (che ora funziona), oppure 2) impara ad aspettare un po 'prima di scorrere. Né è l'ideale, ma va bene per ora.

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.