101 votes

Que représente le champ StartupWMClass d'un fichier .desktop ?

Je travaille sur ce pré-existant .desktop et j'ai un doute :

Le contenu du fichier est :

[Desktop Entry]
#Icon=connect-data-space
Icon=XCloud
Categories=Utility;
Type=Application
#Exec=/usr/share/ConnectDataSpace/appl/launcher.sh
Exec=/usr/share/XCloud/appl/launcher.sh
Name[en_US]=Connect Data Space
#Name=Connect Data Space
Name=XCloud
Comment[en_US]=
Comment=
StartupNotify=true
Terminal=false
OnlyShowIn=GNOME;Unity;
StartupWMClass=ConnectDataSpace
Actions=CheckUpgrade

[Desktop Action CheckUpgrade]
Name=Verifica Aggiornamenti
#Exec=java -jar /usr/share/ConnectDataSpace/appl/lib/shellExtBridge.jar -checkupgrade
Exec=java -jar /usr/share/XCloud/appl/lib/shellExtBridge.jar -checkupgrade
OnlyShowIn=GNOME;Unity;

Que fait exactement le StartupWMClass de ce fichier ?

145voto

chaos Points 25386

Les environnements de bureau Linux modernes (Gnome 3, Ubuntu Unity, Docky) utilisent l'option WMClass pour associer Windows à l'application propriétaire. De nombreuses applications Java présentent le problème suivant : les fenêtres créées par l'application ne sont pas associées au raccourci utilisé pour démarrer l'application (le dock contient donc plusieurs copies de la même icône).

Ainsi, le champ appelé StartupWMClass est une chaîne qui définit dans quelle classe l'application est regroupée dans le lanceur Unity au démarrage.

Vous pouvez découvrir quel WM_CLASS que votre fenêtre a lorsque vous tapez dans un terminal :

xprop WM_CLASS

puis cliquez sur la fenêtre. Dans le cas du terminal gnome, la sortie est la suivante :

WM_CLASS(STRING) = "gnome-terminal", "Gnome-terminal"

Ainsi, tous les Windows avec WM_CLASS "gnome-terminal" et "Gnome-terminal" sont regroupés.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X