Ini contoh spesifik masalah generik yang belum saya temukan solusinya.
Saya memiliki program (Android Virtual Device Manager) yang meluncurkan 'sub-program' (yaitu emulator atau perangkat virtual) dari dalam dirinya sendiri (juga dapat diluncurkan dari tempat lain di mana). Saya ingin contoh EITHER dari program ini dikelompokkan di bawah ikon Unity yang sama.
Saya telah membuat .desktop
file untuk mencoba dan menyelesaikan ini tetapi tidak tahu persis bagaimana cara melakukannya. File desktop adalah sebagai berikut:
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Name=Android Virtual Device
Icon=/home/ben/.icons/android.svg
Exec=/home/ben/usr/bin/android avd
StartupWMClass=Android Virtual Device Manager
Dari apa yang saya pahami, StartupWMClass
adalah apa yang perlu saya atur untuk mencapai ini dengan benar. Saya telah memperoleh dua nama kelas ('Android Virtual Device Manager' dan 'emulator64-arm') menggunakan xprop WM_CLASS
pada jendela repsective. Keduanya bekerja secara individual (ikon peluncur terpasang dengan benar ke program apa pun yang diluncurkan), tetapi saya tidak dapat membuatnya berfungsi untuk keduanya.
Saya berasumsi bahwa saya entah bagaimana perlu menetapkan dua nilai untuk StartupWMClass
tetapi belum dapat melakukannya dengan benar (atau tahu apakah itu operasi yang valid). Saya telah mencoba, yang dipisahkan oleh titik dua seperti variabel lingkungan, dipisahkan dengan koma, tanda kutip, dll dan saya tidak dapat menemukan petunjuk apa pun dalam dokumentasi resmi .
Ada saran?
EDIT:
Contoh lain, yang lebih bertele-tele, tetapi mungkin lebih bisa diidentifikasi adalah dengan Matlab
. Saya menjalankan 2013a dan layar splash yang awalnya ditampilkan dan program memiliki WM_CLASS
nilai yang sama sekali berbeda . Ini berarti, ketika saya mengklik peluncur saya StartupWMClass=com-mathworks-util-PostVMInit
di dalamnya, layar splash muncul dengan Unity
ikon (default tidak dikenal) yang berbeda , sedangkan sisanya muncul dikelompokkan di bawah peluncur saya.
Dengan menggunakan xprop WMCLASS
dan mengklik dulu layar splash, lalu mengulangi dengan Matlab
sesi aktif saya mendapatkan output terminal berikut:
ben@ben-OptiPlex-9010:~$ xprop WM_CLASS
WM_CLASS(STRING) = "MATLAB", "MATLAB"
ben@ben-OptiPlex-9010:~$ xprop WM_CLASS
WM_CLASS(STRING) = "sun-awt-X11-XFramePeer", "com-mathworks-util-PostVMInit"
Jika saya bisa menentukan sesuatu di sepanjang baris:
StartupWMClass=com-mathworks-util-PostVMInit&&MATLAB
Itu akan bekerja dengan sempurna (karena keduanya bekerja secara terpisah) tetapi saya tidak tahu sintaksnya, jika itu ada. Saya hanya tahu tidak ada yang saya coba sejauh ini.
Setiap bantuan atau jawaban pasti bagaimanapun akan menjadi hebat karena saya percaya ini adalah elemen yang cukup mendasar dari desktop yang berfungsi dengan baik.
Drawers
di tautan itu dan dari apa yang ditampilkan, itu hanya mengelompokkan tautan, ketika Anda mengklik setiap sub item, itu masih dibuat dengan ikonnya sendiri di Unity
peluncur yang sedang saya coba hentikan