Configurer le pavé tactile d'un ordinateur portable

En règle générale votre système reconnaît par défaut votre pavé tactile (Touchpad). Mais il est possible d'en améliorer le support ou de configurer des actions insoupçonnées avec le ou les doigts. Il existe pour cela plusieurs outils de configuration.

Avant de modifier ou d'installer un pilote inapproprié, il vaut mieux vérifier quel constructeur et quel modèle équipent votre machine:

egrep -i 'synap|alps|etps' /proc/bus/input/devices

Pour plus de détails, tapez:

xinput list "$(egrep -i 'synap|alps|etps' /proc/bus/input/devices |cut -d'"' -f2)"

Voici quelques outils graphiques permettant de configurer le pilote Synaptics™. Synaptics™ est un des principaux fabricants de pavés tactiles, à ne pas confondre avec le gestionnaire de paquets Synaptic. Si le Pavé tactile n'est pas présent dans ce qui suit ou si vous souhaitez plus d'options, utilisez l'un des Outils avancés ci-dessous.

Sous Unity

Vous trouverez quelques réglages simples avant d'opter pour des outils plus avancés. Il est possible que cette étape soit suffisante pour vos besoins. Allez dans Paramètres Système → Souris & pavé tactile.

Les options qui s'offrent à vous sont :

  • Possibilité de désactivation durant la frappe,
  • Taper pour cliquer,
  • Défilement à deux doigts,
  • Défilement naturel, qui correspond au défilement des smartphones.

Si vous branchez une souris externe sur votre ordinateur portable, il peut être utile de désactiver le pavé tactile. Pour cela, consultez la rubrique ci-dessous traitant de la désactivation du pavé tactile. À noter que, sur certains portables, il existe la possibilité de désactiver et réactiver simplement le pavé tactile avec une combinaison de touches ou avec une touche dédiée au-dessus du pavé tactile.

Sous Xfce

Allez dans Le gestionnaire de paramètres Xfce, bouton Souris.

Sous Lxde

La gestion du pavé tactile sous Lubuntu est basique, vous pouvez y accéder via le menu Applications → Préférences → Clavier et souris.

Sous Kde

L'outi utilisé sous KDE s'appelle kde-touchpad installé par défaut. Il gère aussi la souris et le pavé tactile que les Trackpoints IBM.

Illustration configuration SynaptiKs

Le réglage apparaît dans Configuration du système → Matériel → Périphériques d'entrée → Touchpad . Depuis quelques versions, ces réglages sont accessibles via une icône Synaptiks dans la boîte à miniature. Pour désactiver le pavé tactile lors de la frappe, cochez Automatically switch off touchpad on keyboard activity.

La configuration en ligne de commande offre plus de possibilités de réglages qu'avec les applications graphiques. Le pilote Synaptics est fourni par les paquets xserver-xorg-input-synaptics installé par défaut sous Ubuntu 16.04 Xenial et par xserver-xorg-input-libinput installé par défaut sous Ubuntu 18.04 Bionic.

Une alternative est xserver-xorg-input-mtrack. Certain matériel nécessitent le pilote xserver-xorg-input-evdev

Dans un terminal, entrez la commande suivante pour connaître l'id de votre pavé:

xinput list

Vous obtiendrez un résultat semblable à celui-ci:

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [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)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Laptop_Integrated_Webcam_1.3M             id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=13   [slave  keyboard (3)]

Le pavé Apparaît ici avec l'id=12.

Pour le désactiver, la commande à utiliser est la suivante (en utilisant bien évidemment l'id correspondant à votre configuration):

xinput set-prop 12 "Device Enabled" 0
Une autre solution utilisant xmodmap existe. Voir ici pour plus de détails.

Utilisation de Synclient

Pour configurer Synaptics, on peut se servir de l'outil en ligne de commande Synclient fourni avec Synaptics. Il permet de voir à la volée les réactions du pavé tactile pour définir les options dont vous aurez besoin.

Il est possible que Synclient vous demande d'activer SHMConfig pour fonctionner.

  • Pour afficher la configuration de Synaptics :
    synclient -l

Le terminal vous répond:

   Parameter settings:
    LeftEdge		= 1200
    RightEdge		= 5800
   ...

Pour observer les événements perçus par le pavé tactile, déterminer la surface couverte (intervalles de valeur x et y), le nombre de doigts présents et autres actions : FIXME ne fonctionne pas sous Bionic

synclient -m 100
   time     x    y   z f  w  l r u d m     multi  gl gm gr gdx gdy
  0.000  5212 2853   1 1  4  0 0 0 0 0  00000000   0  0  0   0   0
  0.728  2948 2425  68 1  4  0 0 0 0 0  00000000   0  0  0   0   0
   ...
  • Pour changer dynamiquement la valeur des paramètres de configuration de Synaptics et faire des tests:
    synclient TopEdge=1200 LeftEdge=1200

Quelques définitions

Paramètre Définition
LeftEdge abscisse du bord gauche
RightEdge abscisse du bord droit
TopEdge ordonnée du bord supérieur
BottomEdge ordonnée du bord inférieur
FingerLow pression maximum en dessous de laquelle le driver suppose qu'on n’appuie plus sur le pavé tactile
FingerHigh pression minimum au dessus de laquelle le driver suppose qu'on appuie sur le pavé tactile
MaxTapTime temps maximum (en ms) en dessous duquel le driver interprète un tapotement sur le pavé tactile
MaxTapMove nombre de mouvements maximum en dessous duquel le driver interprète un tapotement sur le pavé tactile
SingleTapTimeout Temps après un tapotement pour le reconnaître comme une simple pression
EmulateMidButtonTime temps maximum (en ms) en dessous duquel le driver interprète un clic « bouton du milieu »
VerScrollDelta distance de déplacement minimum du doigt pour faire un défilement vertical
HorizScrollDelta distance de déplacement minimum du doigt pour faire un défilement horizontal
MinSpeed facteur de vitesse minimum pour le déplacement du curseur
MaxSpeed facteur de vitesse maximum pour le déplacement du curseur
AccelFactor facteur d'accélération pour le déplacement du curseur
EdgeMotionMinSpeed facteur de vitesse minimum pour le défilement
EdgeMotionMaxSpeed facteur de vitesse maximum pour le défilement
TapButton1 configure l'action liée au tapotement avec 1 doigt. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit
TapButton2 configure l'action liée au tapotement avec 2 doigts. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit
TapButton3 configure l'action liée au tapotement avec 3 doigts. 1-clic sur le bouton gauche, 2-molette ou 3-bouton droit
UpDownScrolling génère un événement équivalent à l’événement 4/5 d'une souris à roulette (active le défilement)
CircularScrolling active le défilement circulaire (en cas d’ascenseurs diagonaux)
CircScrollDelta distance de déplacement minimum du doigt pour faire un défilement circulaire
CircScrollTrigger région à partir de laquelle le défilement circulaire commence (de 0 à 8 en fonction de la région)

Informations de slackware-fr.

Modifier le tapotement

  • Pour affecter le bouton central de souris au tapotement avec 2 doigts
    synclient TapButton2=2
  • Pour affecter le bouton droit de souris au tapotement avec 3 doigts
    synclient TapButton3=3

Désactiver le click droit (et gauche) en bas du touchpad

Temporairement

synclient RightButtonAreaLeft=0
synclient RightButtonAreaTop=0

Sauvegarder les modifications

Les modifications faites avec Synclient ne sont pas conservées au redémarrage. Vous pouvez intégrer les commandes dans un script de démarrage pour l'appliquer à tous les utilisateurs ou dans les applications au démarrage pour chaque session utilisateur.

Exemple : pour affecter le bouton central de souris au tapotement avec 2 doigts et le bouton droit de souris au tapotement avec 3 doigts, ajoutez la commande :

synclient TapButton3=3 TapButton2=2

Avec Ubuntu 16.04 (au moins), la méthode ci-dessus ne fonctionne pas. Il faut mettre :

sh -c "synclient TapButton3=3 TapButton2=2"

Appliquer les changements directement à toutes session utilisateur

Cette solution (vérifié sous ubuntu 16.04) consiste à désactiver le plugin de gnome-setting-deamon concernant les réglages de souris:

dconf write /org/gnome/settings-daemon/plugins/mouse/active false

puis créer le fichier /etc/X11/xorg.conf.d/50-synaptics.conf

sudo nano /etc/X11/xorg.conf.d/50-synaptics.conf

pour ajouter les lignes suivantes:

Section "InputClass"
        Identifier "touchpad catchall"
        Driver "synaptics"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Option "TapButton2" "2"
        Option "TapButton3" "3"
EndSection

Émuler la molette

Repérez le nom de votre souris (touchpad, trackpoint, …) en exécutant cette commande :

xinput -list

Puis, créez un script emupave.sh avec ce contenu (dans mon cas, j'agis sur "DualPoint Stick") :

emupave.sh
#!/bin/bash
xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation" 8 1
xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Button" 8 3
xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Timeout" 16 200
xinput set-int-prop "DualPoint Stick" "Evdev Wheel Emulation Axes" 8 6 7 4 5

Rendez ce script exécutable.
Exécutez le pour tester son fonctionnement (ici, le clic droit maintenu permet de scroller en bougeant le trakpoint). Si cela fonctionne, ajouter-le dans les programmes lancés au démarrage.

Certains outils pour configurer le pavé tactile, comme synclient, pour qu'ils puissent fonctionner, ont besoin d'accéder à la mémoire partagée du pilote du pavé tactile synaptics. Ceci est réalisé en plaçant l'option SHMConfig à "True" (vrai) dans la configuration du serveur graphique.
Lorsque cette option est activée, les outils cités peuvent modifier la configuration de votre pavé tactile à la volée, sans avoir à redémarrer le serveur Xorg.

  • Créer avec les droits d'administration le fichier /etc/X11/xorg.conf.d/50-synaptics.conf:
  • Ajoutez la ligne
            Option "SHMConfig" "true"

    avant la ligne EndSection :

    Section "InputClass"
            Identifier "touchpad catchall"
            Driver "synaptics"
            MatchIsTouchpad "on"
            MatchDevicePath "/dev/input/event*"
            Option "SHMConfig" "true"
    EndSection

Redémarrez pour que les changements soient pris en compte.

Si les réglages que vous effectuez dans les fichiers de configuration de xorg (par exemple 50-synaptics) semblent ne pas avoir d'effet, essayez la démarche suivante :

  • Ouvrez gconf-editor ;
  • Allez sur la clef /apps/gnome_settings_daemon/plugins/pointing-device/ ;
  • Décochez la case active ;
  • Redémarrez afin que les changement soient pris en compte.

Cela aura pour effet de désactiver les réglages imposés par gnome-settings-daemon, rendant ainsi vos réglages manuels actifs. (Cette manipulation est inspirée de ce qui est décrit dans le Wiki d'Archlinux).

En ligne de commande

Prenons le cas d'un pavé tactile qui est désactivé. Pour l'activer :

synclient TouchpadOff=0

Pour désactiver le pavé tactile :

synclient TouchpadOff=1

Pour le désactiver uniquement lors de la frappe au clavier :

synclient TouchpadOff=2

Graphiquement

Souvent un raccourci clavier est prévu à cet effet sur la majorité des portables. Sinon il existe un applet qui permet de désactiver/réactiver rapidement le touchpad. Pour l'installer:

Selon le thème de votre bureau, l'icône de touchpad-indicator pourra être invisible (blanc sur blanc ou blanc noir sur noir). Cherchez un espace suspect entre 2 icônes et cliquez dessus pour modifier les préférences d'apparence de l'icône.

Avec Gnome-Shell : ajouter l'extension "Touchpad Indicator".

Désactiver/activer avec un raccourci clavier

Si votre raccourci clavier (avec la touche fn par exemple) pour désactiver le pavé tactile ne fonctionne pas, ou bien si vous souhaitez tout simplement allouer un raccourci clavier à l'activation/désactivation de celui-ci, enregistrez avec les droits d'administration le script qui suit dans le dossier /usr/local/bin/touchpad:

/usr/local/bin/touchpad
#!/bin/sh
status=$(synclient -l | grep TouchpadOff | awk '{print $3}')
if [ $status -eq 1 ];then
          status=0
else
          status=1
fi
synclient TouchpadOff=$status
exit

Rendez-le exécutable et allouez-lui un raccourci clavier en mettant dans le champs commande: touchpad.

Désactiver définitivement

Si le pavé tactile est branché en interne comme un périphérique PS/2 (ancienne norme pour les prises des souris/clavier), vous pouvez bloquer le module au démarrage du système en rajoutant.

Sur les portables Asus qui ne possèdent pas de fonction directe de désactivation du pavé tactile par la fonction fn, cette procédure est simple, efficace et permet de désactiver le pavé tactile sans désactiver la souris en USB.

Si vous ne branchez pas toujours votre souris USB, il est préférable de désactiver le pavé tactile manuellement (éventuellement par un lanceur) après démarrage par la commande :

xinput –set-prop "PS/2 Generic Mouse" "Device Enabled" 0

En utilisant Fusuma, vous pouvez ajouter des fonctionnalités avancées comme augmenter le volume en faisant glisser 3 ou 4 doigts, passer d'un bureau à un autre, etc.

Installer Fusuma

D'abord, vous devez appartenir au input group, si ce n'est déjà fait.

sudo gpasswd -a $USER input

Redémarrez la session pour que les changements prennent effet.

Ensuite, installez libinput-tools, xdotool, et enfin fusuma :

sudo apt-get install libinput-tools
sudo apt-get install xdotool
sudo gem install fusuma

Enfin, activez la réception des mouvements du trackpad :

gsettings set org.gnome.desktop.peripherals.touchpad send-events enabled

Configurer les gestes

Dans votre répertoire personnel, sous le dossier .config (activez les dossiers cachés avec Ctrl+H si vous ne les voyez pas), ajoutez un dossier fusuma puis créez-y le fichier config.yml.

Vous pouvez l'éditer pour configurer vos actions, d'après le modèle suivant :

swipe:
  3: 
    left: 
      command: 'xdotool key alt+Right'
    right: 
      command: 'xdotool key alt+Left'
    up: 
      command: 'xdotool key super'
      interval: 0.8
    down: 
      command: 'xdotool key super'
  4:
    left: 
      command: 'xdotool key ctrl+alt+Down'
    right: 
      command: 'xdotool key ctrl+alt+Up'
    up: 
      command: 'xdotool key ctrl+alt+Down'
    down: 
      command: 'xdotool key ctrl+alt+Up'
pinch:
  in:
    command: 'xdotool key ctrl+plus'
  out:
    command: 'xdotool key ctrl+minus'

threshold:
  swipe: 0.4
  pinch: 0.4

interval:
  swipe: 0.8
  pinch: 0.1

Les commandes swipe correspondent aux mouvements glissés, et pinch à pincé. Pour chaque mouvement, vous pouvez préciser le nombre de doigts associés (ici 3 ou 4), et la direction du mouvement (left, right, up, down). La ligne command précise l'action associée, qui sont ici des raccourcis clavier (alt+Right pour le retour arrière sur un navigateur, ctrl+alt+Down/Up pour changer de bureau virtuel, ctrl+plus/minus pour zoomer/dézoomer, etc…).

Vous pouvez faire correspondre à chaque mouvement un raccourci clavier, et vous pouvez ajouter des raccourcis clavier pour d'autres actions dans l'application Paramètres d'Ubuntu, sous Périphériques puis Raccourcis clavier. Les paramètres thresold et pinch indiquent respectivement le seuil de détection du mouvement et l'intervalle de temps entre deux mêmes mouvements consécutifs, en secondes. Ils peuvent être globaux (à la fin) ou particuliers à une action (sous la ligne command).

Vous pouvez tester vos raccourcis en tapant par exemple dans un terminal la commande

xdotool key super

Enfin, testez le résultat en lançant la commande

fusuma

Activer Fusuma

Pour fonctionner, Fusuma doit être relancé à chaque démarrage de votre ordinateur. Pour ce faire, ouvrez l'application Applications au démarrage, puis ajoutez une entrée Fusuma, comportant la commande fusuma. Redémarrez votre ordinateur pour tester le résultat !

Absence de bouton droit sur le touchpad avec Ubuntu 18.04

Certains PC portables d'entrée de gamme n'ont plus de bouton droit sur touchpad, après la mise à jour vers Ubuntu 18.04. Il s'agit de certains touchpad sans bouton, comme les Dell Inspiron série 5000.

installez le paquet gnome-tweaks.

Lancer "Ajustement de GNOME" , cliquer sur le menu "Clavier & souris" et dans la partie Émulation du clic de souris cochez Surface :

Le pavé tactile ne fonctionne pas

Pour régler ce souci, il suffit généralement d'ajouter au noyau le paramètre i8042.nopnp. Sur certains portables il est nécessaire de modifier des paramètres dans le bios. Par exemple désactiver le mode Advanced sur les Packard Bell.

Le pavé tactile ne fonctionne plus

Il arrive que le pavé tactile se bloque définitivement après avoir appuyé sur le « bouton blocage » du portable. Dans un premier temps appuyez de nouveau sur le « bouton blocage » du pavé tactile pour le réactiver. Si cela ne résout pas votre problème, y compris après avoir redémarré, le problème peut être lié à Gnome, au pilote ACPI ou au pilote du bus serie i8042.

  • problème lié à Gnome: Dans un terminal, taper la commande :
    gconftool --type bool --set /desktop/gnome/peripherals/touchpad/touchpad_enabled true
  • problème lié au pilote ACPI: Lancer dans un terminal la commande
    xev

    et placer la souris dans la fenêtre qui s'ouvre.
    Appuyer sur le "bouton blocage" du pavé tactile, et s'assurer qu'une ligne KeymapNotify apparaît dans le terminal.
    Si ce n'est pas le cas, le pilote ACPI/WMI intercepte l'évènement clavier. Refaire le test en ayant déchargé le pilote "acpi"2)

  • problème du bus série: Ajouter le paramètre i8042.nomux en plus de quiet splash dans le fichier /etc/default/grub, lancer la commande sudo update-grub2 puis redémarrer.

Le « multitouch » ne fonctionne pas

Cette partie concerne uniquement les pavés tactile supportant le multitouch.

La gestion du multitouch permet d'attribuer des actions en fonction du nombre de doigts qui sont présent sur le pavé tactile. Par défaut, le tapotement à deux doigts est équivalent à un clic avec la molette. Le tapotement à trois doigts est équivalent à un clic du bouton droit.

Le tapotement à deux doigts permet, par exemple dans Firefox, l'ouverture d'hyperliens dans un nouvel onglet ou la fermeture d'onglet. Pour activer ces deux tapotements veuillez utiliser les commandes suivantes :

synclient TapButton2=2 TapButton3=3

Pour en savoir plus et ajouter d'autres options, vous pouvez consulter la rubrique Synclient de cette page.

Problèmes de contact de paume

S'il arrive que la paume de vos mains entre en contact avec le pavé tactile pendant que vous tapez au clavier et que cela provoque des clics indésirables, il existe des solutions ! (Voir ici pour la solution simple en ligne de commande).

Désactiver la fonction de clic du pavé tactile

Si votre pavé tactile possède des boutons pour assurer la fonction de clic, il n'est pas utile de conserver la fonction qui permet de cliquer en tapant sur le pavé tactile lui-même. Pour désactiver cette fonction il suffit de décocher la case "Activer les clics de souris avec le pavé tactile" dans les préférences (cf. § en début de page).

« Pointeur fou »

Il se peut que :

  • Le pavé tactile ou la souris n'en fasse qu'à sa tête, que le pointeur bouge dans tous les sens et clique un peu partout sur votre écran ;
  • Le pointeur bouge correctement mais que les clics soient désactivés sauf sur certains éléments de la fenêtre active.

Ce problème de « pointeur fou » à été signalé sur des portables Dell, Acer, Hercules, Nec et aussi sur d'autres distributions Linux (Fedora, …).

Pour régler ce souci, il suffit généralement d'ajouter au noyau une des combinaisons de paramètres suivantes :

  • i8042.nomux=1 ;
  • i8042.reset=1 ;
  • i8042.nomux=1 i8042.reset=1.

Dans les paramètres système, vérifiez également les paramètres d'accès universel: la fonction "Dwell click" (clic par survol) a peut-être été activée.

pour les portables Dell XPS voir cette page (en).

Défilement vertical et horizontal inversé

Ce problème a été rencontré sur Ubuntu 14.04 et également les précédentes version (13.04 / 13.10), pour corriger cela de manière ponctuelle, il faut repérer les valeurs de « synclient » à partir d'un terminal (Ctrl+Alt+T):

  synclient

Vous obtiendrez une longue liste de paramètres de ce genre:

  Parameter settings:
  LeftEdge                = 1766
  RightEdge               = 5388
  TopEdge                 = 1643
  BottomEdge              = 4535
  FingerLow               = 25
  FingerHigh              = 30
  MaxTapTime              = 180
  MaxTapMove              = 237
  MaxDoubleTapTime        = 180
  SingleTapTimeout        = 180
  ClickTime               = 100
  EmulateMidButtonTime    = 0
  EmulateTwoFingerMinZ    = 282
  EmulateTwoFingerMinW    = 7
  VertScrollDelta         = -107
  HorizScrollDelta        = -107
  VertEdgeScroll          = 1
  HorizEdgeScroll         = 1
  CornerCoasting          = 0
  VertTwoFingerScroll     = 0
  HorizTwoFingerScroll    = 0
  MinSpeed                = 1
  MaxSpeed                = 1.75

Dans cette liste, il vous faut trouver les lignes VertScrollDelta = -107 et HorizScrollDelta = -107. La valeur « -107 » de ces paramètres peut différer de cet exemple, mais il vous faudra la garder de côté.

Pour retrouver le défilement vertical dans le bon sens, il faut passer la valeur négative à positive de la sorte:

  synclient VertScrollDelta=107

Pour le défilement horizontal, la même commande avec le paramètre HorizScrollDelta:

  synclient HorizScrollDelta=107

Pour garder ces paramètres définitivement, il faut appliquer ces deux dernières commandes au démarrage dans la rubrique (Applications au Démarrage), et enregistrer cela dans la partie Commande de la sorte:

  • Serveur graphique X.org ;
  • HAL, la couche d'abstraction matérielle ;
  • Fonctionnement de Udev ;
  • Configuration de la souris ;
  • Configuration du clavier;

Références


2)
lister les pilotes via lsmod, puis modprobe -r <pilote_acpi>
  • touchpad.txt
  • Dernière modification: Le 06/12/2019, 19:06
  • (modification externe)