Odpowiedzi:
Tak długo, jak ekran dotykowy jest wykrywany jako nudne urządzenie wejściowe, możesz to zrobić za pomocą xinput
. To narzędzie pozwala zdefiniować nowe wskaźniki główne (wirtualny wskaźnik, który przypomina jeden wskaźnik myszy) oraz odłączyć i dołączyć wskaźniki podrzędne (rzeczywiste urządzenia sprzętowe) od niego i do niego.
Więc wszystko, co musisz zrobić, to
Odbywa się to podobnie do tego:
Utwórz nowy wskaźnik główny:
$ xinput create master touchy
W ten sposób tworzona jest nowa para główna klawiatura / wskaźnik, w której klawiatura nosi nazwę »klawiatura dotykowa«, a wskaźnik »klawiatura dotykowa«:
$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=10 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=11 [slave pointer (2)]
⎜ ↳ My Cool™ Touchscreen id=14 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=9 [slave keyboard (3)]
↳ ThinkPad Extra Buttons id=12 [slave keyboard (3)]
↳ HID 046a:0011 id=13 [slave keyboard (3)]
⎡ touchy pointer id=15 [master pointer (16)]
⎜ ↳ touchy XTEST pointer id=17 [slave pointer (15)]
⎣ touchy keyboard id=16 [master keyboard (15)]
↳ touchy XTEST keyboard id=18 [slave keyboard (16)]
Podłącz wskaźnik niewolnika ekranu dotykowego do nowego urządzenia nadrzędnego
W tym przykładzie założę, że »My Cool ™ Touchscreen« jest urządzeniem, którego należy użyć ( id=14
):
$ xinput reattach 14 15
Spowoduje to:
$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=10 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=11 [slave pointer (15)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=9 [slave keyboard (3)]
↳ ThinkPad Extra Buttons id=12 [slave keyboard (3)]
↳ HID 046a:0011 id=13 [slave keyboard (3)]
⎡ touchy pointer id=15 [master pointer (16)]
⎜ ↳ My Cool™ Touchscreen id=14 [slave pointer (2)]
⎜ ↳ touchy XTEST pointer id=17 [slave pointer (15)]
⎣ touchy keyboard id=16 [master keyboard (15)]
↳ touchy XTEST keyboard id=18 [slave keyboard (16)]
Teraz ekran dotykowy powinien działać jak pojedyncze urządzenie wskazujące.
Edycja: Aby pozbyć się drugiego wskaźnika myszy, który jest zbyteczny dla ekranu dotykowego, możesz użyć tego narzędzia, które wykorzystuje rozszerzenie XInput2 do indywidualnej zmiany wskaźników.
xicursorset
nie działa dla mnie w KDE, nic się nie dzieje. Jakieś pomysły?