Bir .desktop dosyasının StartupWMClass alanı neyi temsil eder?


69

Bu önceden var olan .desktop dosyası üzerinde çalışıyorum ve bir şüphem var:

Dosya içeriği:

[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;

Bu dosyanın StartupWMClass alanı tam olarak neyi temsil ediyor?

Yanıtlar:


95

Modern Linux masaüstü ortamları (Gnome 3, Ubuntu Unity, Docky), WMClassmülkiyeti pencerelerle ilişkilendirmek için özelliği kullanır. Pek çok Java tabanlı uygulama, uygulama tarafından oluşturulan pencerelerin uygulamayı başlatmak için kullanılan kısayolla ilişkili olmadığı (bu nedenle yuva aynı simgenin birden çok kopyasını içerir) ile ilgili bir sorun yaşar.

Böylece çağrılan alan StartupWMClass, uygulamanın başlangıçta Unity Launcher'da hangi sınıfta gruplandırıldığını tanımlayan bir dizedir.

Sen hangi öğrenebilirsiniz WM_CLASSBir terminalde yazarken pencerenizi var:

xprop WM_CLASS

ve ardından pencereye tıklayın. Gnome terminalinde çıkış aşağıdaki gibidir:

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

Böylece WM_CLASS"gnome-terminal" ve "Gnome-terminal" olan tüm pencereler birlikte gruplandırılır.


3
Bunun bir sürü bilgi eklemez olsa resmi FreeDesktop özellikleri sayfaya bağlantı için yararlı buluyorum: standards.freedesktop.org/desktop-entry-spec/latest/...
Pisu

1
Cevap için daha fazlası: masaüstü dosyasının değerinde tırnak kullanmayın.
joker
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.