Два очага на X Windows - PullRequest
       2

Два очага на X Windows

1 голос
/ 28 февраля 2012

Можно ли иметь два разных фокуса / фокуса на X windows? (В основном, с использованием двух мышей и клавиатур с одной физической машиной одновременно. Если да, то как это сделать?

1 Ответ

1 голос
/ 03 апреля 2012

С недавними серверами Xorg, да. Вам нужно использовать расширение XInput версии 2.0 или новее. Вам также понадобится диспетчер окон, способный сделать это, и я не уверен, какая из современных WM может сделать это уже.

Документация:

В тестировании Debian я даже могу получить два указателя и начать использовать их прямо сейчас (один управляется USB-мышью, а другой - сенсорной панелью):

pzanoni@vicky:~$ xinput --list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ USB Optical Mouse                         id=11   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=13   [slave  pointer  (2)]
⎜   ↳ TPPS/2 IBM TrackPoint                     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)]
    ↳ Lite-On Technology USB Productivity Option Keyboard( has the hub in # 1 )     id=9    [slave  keyboard (3)]
    ↳ Lite-On Technology USB Productivity Option Keyboard( has the hub in # 1 )     id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=12   [slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                    id=15   [slave  keyboard (3)]
    ↳ ACPI Virtual Keyboard Device              id=16   [slave  keyboard (3)]
pzanoni@vicky:~$ xinput --create-master my 1 1
pzanoni@vicky:~$ xinput --list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ USB Optical Mouse                         id=11   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=13   [slave  pointer  (2)]
⎜   ↳ TPPS/2 IBM TrackPoint                     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)]
    ↳ Lite-On Technology USB Productivity Option Keyboard( has the hub in # 1 )     id=9    [slave  keyboard (3)]
    ↳ Lite-On Technology USB Productivity Option Keyboard( has the hub in # 1 )     id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=12   [slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                    id=15   [slave  keyboard (3)]
    ↳ ACPI Virtual Keyboard Device              id=16   [slave  keyboard (3)]
⎡ my pointer                                id=17   [master pointer  (18)]
⎜   ↳ my XTEST pointer                          id=19   [slave  pointer  (17)]
⎣ my keyboard                               id=18   [master keyboard (17)]
    ↳ my XTEST keyboard                         id=20   [slave  keyboard (18)]
pzanoni@vicky:~$ xinput --reattach "SynPS/2 Synaptics TouchPad" "my pointer"
...