URL: https://linuxfr.org/users/maxix00/journaux/mpx-retour-dexp%C3%A9rience Title: MPX : retour d'expérience Authors: maxix Date: 2010年03月31日T19:11:53+02:00 Tags: peter_hutterer et firefox Score: 24 Ca y est, j'ai enfin pu essayer [[MPX]], via la prochaine [Kubuntu 10.4 [https://wiki.kubuntu.org/LucidLynx/Beta1/Kubuntu](https://wiki.kubuntu.org/LucidLynx/Beta1/Kubuntu)]. Qu'est ce qu'[[MPX]]? [[MPX]] est un acronyme de multi-pointer X Server (Serveur X à multi-pointage). [[MPX]] est une modification de [[[[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. (source [http://doc.ubuntu-fr.org/mpx)](http://doc.ubuntu-fr.org/mpx)) [[MPX]] a été crée Peter Hutterer en 2005 et a été inclus dans Xinput2, qui est présent dans [[X.Org]] 1.7, lequel accompagne... la dernière Ubuntu. En gros, ca permet d'avoir plusieurs pointeurs à l'écran. Pourquoi avoir plusieurs pointeurs? Personnellement, j'y vois la réponse à une vieille problématique : j'ai une grosse surface de travail (2x26"), et j'ai souvent un comparse à mes cotés, qui a souvent envie de faire autre chose qu'attendre que j'aie fini d'utiliser la souris pour pouvoir consulter sa boite mail. Fatalement, je perds immédiatement le contrôle sur mon application, etc... Avec [[MPX]], on se retrouve ainsi a deux devant deux écrans, avec deux claviers, mais un seul système : alors que l'on peut tous deux utiliser nos applications en même temps, taper deux choses en même temps, et tant d'autres choses, on peut toujours se passer des fenêtres d'un écran a l'autre. Bien sur, tant que les toolkits graphiques ne prendront pas en charge le fait d'avoir plusieurs éléments actifs en même temps, il est quasiment impossible de se "partager" une application : Firefox, pour l'exemple, supporte difficilement le fait de d'avoir deux souris devant l'application, même en utilisant plusieurs fenêtres (je n'ai pas testé avec plusieurs profils) : par exemple, si la souris 1 active la fenêtre 2 et si la souris 2 active la fenêtre 2 pour saisir avec le clavier 2, le clavier 1 se met a écrire dans la fenêtre 2 et la souris 1 devient inactive sur la fenêtre 1... De même, l'utilisation du défilement doux (bouton millieu) bugge complètement si une autre souris rentre dans la zone de firefox. Par contre, Firefox à droite et Konqueror à gauche, ca marche parfaitement. Même Konqueror à gauche et Konqueror à droite fonctionnent sans soucis, QT ayant l'air plus a l'aise avec les différentes zones d'activité. Il est également impensable actuellement de vouloir preter un clavier afin d'avoir un copilote humain dans un jeux 3D, la deuxieme souris est folle dans les jeux testés - le second clavier marche correctement dans sa propre fenetre. Pour mettre en place [[MPX]], il suffit d'utiliser la commande xinput : z$ xinput list ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ "Logitech USB-PS/2 Optical Mouse" id=10 [slave pointer (2)] ⎜ ↳ "MLK Trust Keyboard 14909" id=12 [slave pointer (2)] ⎜ ↳ "Macintosh mouse button emulation" id=13 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] £spaces£ £/spaces£↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] £spaces£ £/spaces£↳ "Power Button" id=6 [slave keyboard (3)] £spaces£ £/spaces£↳ "Power Button" id=7 [slave keyboard (3)] £spaces£ £/spaces£↳ "Logitech HID compliant keyboard" id=8 [slave keyboard (3)] £spaces£ £/spaces£↳ "Logitech HID compliant keyboard" id=9 [slave keyboard (3)] £spaces£ £/spaces£↳ "MLK Trust Keyboard 14909" id=11 [slave keyboard (3)] z$ xinput create-master new z$ xinput list ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ "Logitech USB-PS/2 Optical Mouse" id=10 [slave pointer (2)] ⎜ ↳ "MLK Trust Keyboard 14909" id=12 [slave pointer (2)] ⎜ ↳ "Macintosh mouse button emulation" id=13 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] £spaces£ £/spaces£↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] £spaces£ £/spaces£↳ "Power Button" id=6 [slave keyboard (3)] £spaces£ £/spaces£↳ "Power Button" id=7 [slave keyboard (3)] £spaces£ £/spaces£↳ "Logitech HID compliant keyboard" id=8 [slave keyboard (3)] £spaces£ £/spaces£↳ "Logitech HID compliant keyboard" id=9 [slave keyboard (3)] £spaces£ £/spaces£↳ "MLK Trust Keyboard 14909" id=11 [slave keyboard (3)] ⎡ new pointer id=14 [master pointer (15)] ⎜ ↳ new XTEST pointer id=16 [slave pointer (14)] ⎣ new keyboard id=15 [master keyboard (14)] £spaces£ £/spaces£↳ new XTEST keyboard id=17 [slave keyboard (15)] z$ xinput reattach 12 14 z$ xinput reattach 11 15 z$ xinput list ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ "Logitech USB-PS/2 Optical Mouse" id=10 [slave pointer (2)] ⎜ ↳ "Macintosh mouse button emulation" id=13 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] £spaces£ £/spaces£↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] £spaces£ £/spaces£↳ "Power Button" id=6 [slave keyboard (3)] £spaces£ £/spaces£↳ "Power Button" id=7 [slave keyboard (3)] £spaces£ £/spaces£↳ "Logitech HID compliant keyboard" id=8 [slave keyboard (3)] £spaces£ £/spaces£↳ "Logitech HID compliant keyboard" id=9 [slave keyboard (3)] ⎡ new pointer id=14 [master pointer (15)] ⎜ ↳ "MLK Trust Keyboard 14909" id=12 [slave pointer (14)] ⎜ ↳ new XTEST pointer id=16 [slave pointer (14)] ⎣ new keyboard id=15 [master keyboard (14)] £spaces£ £/spaces£↳ "MLK Trust Keyboard 14909" id=11 [slave keyboard (15)] £spaces£ £/spaces£↳ new XTEST keyboard id=17 [slave keyboard (15)] C'est donc assez facile, plutôt pratique, particulièrement avec les murs d'écrans ou les centres de contrôle : plusieurs opérateurs peuvent agir de concert au niveau bureau, traiter des dossiers, se les passer d'opérateur à opérateur immédiatement et visiblement... Bref il ne manque plus qu'un gigantesque écran holographique :)