{{tag>Lucid souris}}
----
====== MPX : Multi-Pointer X ======
MPX est un acronyme de multi-pointer X Server (Serveur X à multi-pointage).
MPX est une modification de [[:xorg|X.Org]] implantée dans le système X Window. Il permet d'utiliser plusieurs pointeurs indépendants au niveau du système de fenêtrage. Contrairement à beaucoup d'autres applications de multi-pointage, MPX permet à de nombreuses applications X Window de s'exécuter sans aucune modification.
Il permet entre autre à plusieurs utilisateurs d'exploiter simultanément des applications différentes.
===== Installation =====
Depuis Ubuntu 10.04 LTS,Lucid Lynx, MPX est inclus dans Xorg (pour info version 7.5).
La méthode décrite ci-dessous n'est valable qu'a partir de Ubuntu Lucid.
===== Utilisation =====
Depuis une [[:console]], on regarde la configuration actuelle :
$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Zalman FPSGUN Mouse id=8 [slave pointer (2)]
⎜ ↳ Logitech USB-PS/2 Optical Mouse id=9 [slave pointer (2)]
⎜ ↳ HID 046a:0023 id=11 [slave pointer (2)]
⎜ ↳ btnx mouse 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)]
↳ Power Button id=7 [slave keyboard (3)]
↳ HID 046a:0023 id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
↳ btnx keyboard id=13 [slave keyboard (3)]
Il existe 1 pointeur virtuel((Virtual core pointer)) et 1 clavier virtuel((Virtual core keyboard)) qui sont liés.
On remarque que mes deux souris sont associées au seul pointeur.
On ajoute donc un nouveau pointeur :
$ xinput create-master New
On regarde ce que ça donne, toujours par :
$ xinput list
À la fin nous retrouvons un nouveau couple clavier/souris.
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Zalman FPSGUN Mouse id=8 [slave pointer (2)]
⎜ ↳ Logitech USB-PS/2 Optical Mouse id=9 [slave pointer (2)]
⎜ ↳ HID 046a:0023 id=11 [slave pointer (2)]
⎜ ↳ btnx mouse 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)]
↳ Power Button id=7 [slave keyboard (3)]
↳ HID 046a:0023 id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
↳ btnx keyboard id=13 [slave keyboard (3)]
⎡ New pointer id=15 [master pointer (16)]
⎜ ↳ New XTEST pointer id=17 [slave pointer (15)]
⎣ New keyboard id=16 [master keyboard (15)]
↳ New XTEST keyboard id=18 [slave keyboard (16)]
Vous devez voir un nouveau pointeur inactif sur votre écran.
Maintenant, on va prendre le //Zalman FPSGUN Mouse// par son identifiant « id=8 » et l'associer à notre nouveau pointeur « id=15 ».
$ xinput reattach 8 15
Ce qui nous donne comme configuration de xinput :
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech USB-PS/2 Optical Mouse id=9 [slave pointer (2)]
⎜ ↳ HID 046a:0023 id=11 [slave pointer (2)]
⎜ ↳ btnx mouse 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)]
↳ Power Button id=7 [slave keyboard (3)]
↳ HID 046a:0023 id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
↳ btnx keyboard id=13 [slave keyboard (3)]
⎡ New pointer id=15 [master pointer (16)]
⎜ ↳ Zalman FPSGUN Mouse id=8 [slave pointer (15)]
⎜ ↳ New XTEST pointer id=17 [slave pointer (15)]
⎣ New keyboard id=16 [master keyboard (15)]
↳ New XTEST keyboard id=18 [slave keyboard (16)]
Le nouveau curseur doit bouger avec votre seconde souris.
Pour annuler tout ça, on réaffecte notre seconde souris à notre premier curseur « id=2 » :
$ xinput reattach 8 2
Et on supprime notre curseur inutile (toujours id=15) :
$ xinput remove-master 15
Le curseur inutile doit avoir disparu !
Rien n'empêche d'appeler votre curseur comme vous le voulez au lieu de « New ».
===== Interface graphique pour xinput =====
Vous pourrez trouvez une interface graphique à Xinput en téléchargeant le .zip à cette [[https://github.com/Max-E/xinput-ui/archive/master.zip|adresse]].
[[:archivage|Décompressez]] l'archive, puis exécutez le fichier ''xinput-ui.py'' contenu dans le dossier **xinput-ui-master**.
===== Liens Externes =====
* Voir [[wpfr>Multi-Pointer_X]] sur Wikipedia [fr]
* Voir [[wp>Multi-Pointer_X]] sur Wikipedia [en]
----
//Contributeurs : [[:utilisateurs:Ignace72|Ignace72]]//