Mam klawiaturę ThinkPad USB i chcę używać środkowego kliknięcia do wklejania i przewijania.
Działa to na moim laptopie ThinkPad. Jeśli na laptopie środkowy przycisk kliknięcia jest przytrzymany przez wystarczająco krótki czas, to po zwolnieniu jest interpretowany jako „ wklej ”. Dłuższe przytrzymanie interpretowane jest jako „ przewijanie ”.
Problemem jest to, że za pomocą klawiatury USB, decyzja o wklej występuje, gdy środkowy przycisk jest wciśnięty , a nie kiedy jest zwolniony , więc jeśli próbuję przewijania z środkowego kliknięcia, będzie wklej, następnie przewinąć, kiedy trzymał ją w dół (choć co ciekawe, ta pasta nie pojawia się, jeśli już przesuwam kursor, co jest moim bieżącym obejściem).
Czy istnieje sposób, aby powiedzieć X11, aby wklejał przy zwolnieniu środkowego przycisku zamiast naciskać (z decyzją przewijania zamiast wklejania w zależności od tego, jak długo był przytrzymywany)?
xev
pokazuje, że ButtonPress
przycisk for 2, gdy tylko kliknę, a następnie, ButtonRelease
gdy zacznę przewijać. Powinno się zdarzyć, że żadne z tych zdarzeń nie zostanie wygenerowane, dopóki akcja nie zostanie ujednoznaczniona przez przesunięcie punktu ścieżki (w którym to przypadku nie jest generowane ani naciśnięcie ani zwolnienie) ani przycisk 2 nie zostanie zwolniony (w którym to przypadku oba zdarzenia są wysyłane po zwolnieniu).
xev
aby obserwować zdarzeniaButtonPress
iButtonRelease
sprawdzić, czy przycisk laptopa naprawdę wysyła zdarzenia, o których myślisz, że są w momencie, w którym myślisz, że tak jest. Możliwe, że zamiast tego robi trochę swojej magii i „okłamuje” X11, kiedy przyciski są naciskane i zwalniane. Nawiasem mówiąc, wydaje się normalne, że pasta pojawia się natychmiast po naciśnięciu przycisku 2, a nie zwolnieniu .