Personnaliser son bureau Gnome

Gnome et multitouch

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Dernière mise à jour : 27/02/2017 à 18h59
Table des matières

Introduction



Tout d'abord bonjour à toi :hello:

Qu’est-ce que le multi-touch?


Wikipédia :

Le dispositif se compose d’un pavé tactile ou d’une surface tactile transparente appliquée sur un écran tactile, qui reconnaissent des points de contact simultanés et multiples, ainsi que d’un logiciel qui interprète ces contacts simultanés. Ceci inclut en général la position (et éventuellement le degré de pression) de chaque point de contact de façon indépendante, ce qui permet d’effectuer des gestes et d’interagir avec plusieurs doigts ou avec les mains, et de créer une interaction riche par des gestes intuitifs

Pour plus d’informations je vous renvoie vers ces liens:

-- -A qui est destiné ce tuto? ---


Un utilisateur dont le pavé tactile de son portable, n’aurait pas de fonctionnalité multi-touche d’activé en utilisant Gnome, alors que son matériel le permet. Vous utilisez déjà utilisé le multitouch sous Plasma/Xfce par exemple. Gnome utilisant c’est propre paramètres, il est possible que votre matériel fonctionne parfaitement sous d’autre gestionnaire de bureau. Dans ce tuto nous allons forcer Gnome a activer cette fonctionnalité.


Prérequis techniques


  • Une version de Gnome> 3.18)
  • Un pavé tactile Synaptics
  • Pouvoir avoir les droits administrateurs (root) de sa machine

Vérifier le modèle de son pavé tactile


Ouvrer un terminal et taper la commande
Code BASH :
libinput-list-devices

Elle vous listera tout vos périphériques d’entrée.
Le paragraphe qui nous intéresse devrait ressembler à celui-ci:
Code BASH :
 
Device:           SynPS/2 Synaptics TouchPad
Kernel:           /dev/input/event15
Group:            7
Seat:             seat0, default
Size:             76.46x44.31mm
Capabilities:     pointer 
Tap-to-click:     disabled
Tap-and-drag:     enabled
Tap drag lock:    disabled
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   *two-finger edge
Click methods:    none
Disable-w-typing: enabled
Accel profiles:   none
Rotation:         n/a
 

Les deux lignes importantes sont celles-ci
Device: SynPS/2 Synaptics TouchPad
Scroll methods: *two-finger edge
Nous y apprenons que pour le driver Libinput (utilisé par défaut par Gnome)
  • J’ai bien un pavé tactile Synaptics
  • La méthode de scrolling utilise les bords de mon pavé tactile

Rappel: méthode de scrolling


Je vous renvoie au rappel ci-dessous sur les différentes méthodes de scrolling:
Caché :

Type de scrolling
Scrolling vertical sur le bord
Scrolling à deux doigts

Pour aller plus loin:
Walyand scrolling
Wayland tapping


Pour une raison que j’ignore Libinput croit que mon pavé tactile ne gère pas le multi-touch. C’est d’ailleurs pour cella que le menue Gnome concernant le pavé tactile est très pauvres. Les autres paramètres nous sont cachés.


Pour contourner le problème il y a plusieurs façons de faire:
  1. Soit modifier les paramètres Gnome
  2. Soit agir au niveau du pilote



Sources: Libinput FAQ



La première solution est la meilleure car paramètres gnome seront chargés à chaque démarrage. Cependant je ne sais pas où se trouve le fichier de configuration à modifier. (N’hésiter à me faire un retour la dessus)
À défaut le plan d’attaque est simple

  1. Utiliser le driver Synaptic pour modifier les réglages
  2. Créer un script pour automatiser les modifications
  3. Lancer le script automatiquement au démarrage du système

Vérifier que son matériel gère le multi-touch


Tout d’abord vous devez installer le pilote Synaptics pour le serveur d’affichage Xorg, si ce n’est pas déjà fait. Ils a de grande chance d’être déjà installé si vous avez déjà utilisé un bureau tournant su Xorg comme Xfce par exemple.



Ouvrer un terminal et taper la commande
Code BASH :
synclient

Vous devriez obtenir en réponse tous les paramètres de votre pavé tactile.
Code BASH :
[vous@localhost ~]$ synclient
Parameter settings:
    LeftEdge                = 1464
    RightEdge               = 5476
    TopEdge                 = 1192
    BottomEdge              = 4660
    FingerLow               = 25
    FingerHigh              = 30
    MaxTapTime              = 180
    MaxTapMove              = 271
    MaxDoubleTapTime        = 180
    SingleTapTimeout        = 180
    ClickTime               = 100
    EmulateMidButtonTime    = 75
    EmulateTwoFingerMinZ    = 282
    EmulateTwoFingerMinW    = 7
    VertScrollDelta         = 123
    HorizScrollDelta        = 123
    VertEdgeScroll          = 1
    HorizEdgeScroll         = 0
    CornerCoasting          = 0
    VertTwoFingerScroll     = 0
    HorizTwoFingerScroll    = 0
    MinSpeed                = 1
    MaxSpeed                = 1.75
    AccelFactor             = 0.0324412
    TouchpadOff             = 0
    LockedDrags             = 0
    LockedDragTimeout       = 5000
    RTCornerButton          = 0
    RBCornerButton          = 0
    LTCornerButton          = 0
    LBCornerButton          = 0
    TapButton1              = 1
    TapButton2              = 3
    TapButton3              = 2
    ClickFinger1            = 1
    ClickFinger2            = 1
    ClickFinger3            = 1
    CircularScrolling       = 0
    CircScrollDelta         = 0.1
    CircScrollTrigger       = 0
    CircularPad             = 0
    PalmDetect              = 0
    PalmMinWidth            = 10
    PalmMinZ                = 200
    CoastingSpeed           = 20
    CoastingFriction        = 50
    PressureMotionMinZ      = 30
    PressureMotionMaxZ      = 160
    PressureMotionMinFactor = 1
    PressureMotionMaxFactor = 1
    GrabEventDevice         = 0
    TapAndDragGesture       = 1
    AreaLeftEdge            = 0
    AreaRightEdge           = 0
    AreaTopEdge             = 0
    AreaBottomEdge          = 0
    HorizHysteresis         = 8
    VertHysteresis          = 8
    ClickPad                = 0
 

Les paramètres qui nous intéresse sont:
  • VertEdgeScroll -> Scrolling vertical sur le bord droit
  • HorizEdgeScroll -> Scrolling horizontal sur le bord bas
  • VertTwoFingerScroll -> Scrolling vertical à deux doigts
  • HorizTwoFingerScroll -> Scrolling horizontal à deux doigts

S’ils ne sont pas présents, votre pavé tactile ne gère surement pas le multi-touch. Dans mon cas, mon un pavé tactile Synaptic ne peut suivre que 2 doigts en simultanément mais peut en détecter 3. C’est-à-dire que tapoter le paver avec 3 doigts ne mets utile que pour faire un clique droit ou un clique gauche.


Modifier les paramètres qui vous intéresse


Dans mon cas, nous allons activer le scrolling à deux doigts avec les commandes suivantes:
Code BASH :
synclient VertTwoFingerScroll=1
synclient HorizTwoFingerScroll=1
 

Vous pouvez également activer la détection de la paume de la main pendant la frappe avec:
Code BASH :
synclient PalmDetect=1

Pour les autres paramètres je vous renvois à la documentation avec la commande
Code BASH :
 man synaptics 

Tester vos modifications


Vous pouvez tester vos paramètres dans les paramètres Gnome "souris et pavé tactile"

Onglet "tester vos paramètres"


Automatiser vos modifications dans un script


Créer un script


Pour créer un script, c'est relativement simple il suffit créer un fichier texte. Par convention avec une extension .sh mais ce n'est pas obligatoire
Code BASH :
 
#Description:
#Ajout le scrolling à deux doigts non présent par défaut 
#!/bin/bash   #Choix du langage shell (si non utilise celui par défaut du système) 
#Vos paramètres personnalisés  
synclient VertTwoFingerScroll=1  #Autorise le scrolling vertical
synclient HorizTwoFingerScroll=1#Autorise le scrolling horizontal
synclient PalmDetect=1#Détection de la paume de la main pendant la frappe

Il n'y a plus qu'a enregistrer votre fichier.sh
Pour lancer exécuter votre fichier dans un terminal vous devez précisé son emplacement
Code BASH :
Vous@localhost ~]$emplacementdevotrefichier/fichier.sh

[hide][/hide]
Dans le paragraphe suivant nous verront comment éviter de renseigner l'emplacement de votre fichier

Placer votre script avec les autres applications


Il suffit de placer votre fichier dans le répertoire suivant avec les autres applications installées:
Dans un terminal taper
Code BASH :
 
[vous@localhost ~]$ su
Mot de passe : 
[root@localhost vous]# nautilus 

Votre mot de passe ne s'affichera pas c'est normal. Ces commandes vont vous ouvrir l'explorateur de fichier en mode administrateur (root).
Aller dans le dossier /usr/share/ et copier votre script.sh J'ai mis mon fichier "Gnome-Twofingerscroll.sh" dans un dossier par ce que j'aime bien les choses ordonnés mais le résultat est le même :mrgreene:




Je vous conseil de laisser l'explorateur de fichier en mode administrateur ouvert dans un coin, car il nous servira par la suite.

Lancer votre script automatiquement au démarrage de Gnome


Dans ce chapitre nous allons utiliser l'outil maison de Gnome pour lancer automatique une application au démarrage de Gnome.
Si vous avez d'autres gestionnaires de bureau installés, il ne pourront pas affectés.
Aller dans l'outil de personnalisation de Gnome onglet "Applications au démarrage"



Appui sur le "+" pour faire ajouter des applications


Votre fichier.sh ne fait pas partie ce la liste d'application :pleur4:
Mais ne vous découragez pas vous y êtes presque. Pour ajouter votre application à cette liste vous devez lui créer un fichier.desktop

Créer un fichier.desktop


Un ".desktop" est un simple fichier texte avec une extension atypique =). Il vous suffit donc créer un fichier texte avec cette extension.
Ce type de fichier ce compose comme ceci:
Code TEXT :
 
[Desktop Entry]
Name=Gnome-Twofingerscroll
Comment[en_FR]=Autorise le scroll à deux doigt (horizontal et vertical)
Comment=enable two finger scroll on synaptic touchpad
Exec=/usr/share/Gnome-Twofingerscroll/Gnome-Twofingerscroll.sh
Type=Application
Terminal=true
Keywords=multitouch;multi-touch;scroll;pavé tactile; Synaptic
 

Les seules paramètres importants sont:
  • Name=lenomdevotrescrip
  • Exec=/usr/share/../votrefichier.sh
  • Terminal=true -> votre script n'a aucune interface graphique

Les autres paramètres sont plus là pour le fun comme la catégorie de recherche ou les mots clés qui seront liés à votre script
Il ne vous reste plus qu'à enregistrer et à deposer votre "fichier.desktop" dans le dossier /usr/share/applications


Il ne vous reste plus qu'à retourner dans le menue de personnalisation de Gnome onglet Application au démarrage :tchin: