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

69

Je travaille sur ce fichier .desktop préexistant 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 représente exactement le champ StartupWMClass de ce fichier?

AndreaNobili
la source

Réponses:

95

Les environnements de bureau Linux modernes (Gnome 3, Ubuntu Unity, Docky) utilisent cette WMClasspropriété pour associer des fenêtres à l’application propriétaire. De nombreuses applications Java rencontrent 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).

Le champ appelé StartupWMClassest donc une chaîne qui définit la classe dans laquelle l'application est regroupée dans Unity Launcher au démarrage.

Vous pouvez savoir ce que WM_CLASSvotre fenêtre a obtenu 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 toutes les fenêtres avec WM_CLASS"gnome-terminal" et "Gnome-terminal" sont regroupées.

le chaos
la source
3
Je trouve utile de faire un lien vers la page officielle des spécifications de FreeDesktop, même si cela n’ajoute pas beaucoup d’informations: standards.freedesktop.org/desktop-entry-spec/latest/…
Pisu le
1
Plus à la réponse: n'utilisez pas de citation dans la valeur du fichier de bureau.
Joker