Дублікати піктограм для створених вручну елементів запуску GNOME


46

Я завантажив Aptana Studio 3 і створив наступний елемент запуску для використання Alacarte:

файл: alacarte-made.desktop

[Desktop Entry]
Comment=
Terminal=false
Name=Aptana Studio 3
Exec=AptanaStudio3
Type=Application
Icon=/opt/Aptana-Studio-3/icon.xpm

Потім, коли я додаю піктограму до вибраних та відкриваю Aptana Studio 3, я отримую два піктограми, один для запуску нових екземплярів та один для поточно запущеного екземпляра відповідно до наступного знімка екрана:

введіть тут опис зображення

Як змусити програму використовувати той самий значок, доданий до вибраних?


Чи можете ви, будь ласка, вказати, як ви встановили Aptana? З офіційного сайту, що я бачу, є окремий поштовий файл. (щось на зразок портативних програм у Windows).
hytromo

Так, це було все.
malhobayyeb

Отже, як воно закінчилося /opt? Крім того, це на вашому $PATH? Як, вказуючи лише AptanaStudio3файл на робочому столі, він може працювати?
hytromo

1
Я це зробив, дякую. Я створив Sym Link в / usr / bin до /opt/.../aptana Це була лише суть проблеми з називанням. Мені довелося назвати .desktop та bin та посилати так само :)
malhobayyeb

3
Будь ласка, дайте відповідь детально нижче, як вам вдалося вирішити свою проблему :) (я не знаю, я лише задав вам кілька питань)
hytromo

Відповіді:


67

Щоб зберегти просіювання через нитку, згадану @earthmeLon, потрібно зробити наступне:

  1. Запустіть додаток
  2. Запустіть термінал і запустіть xprop WM_CLASS. Клацніть вікно програми.
  3. Ви отримаєте такий вихід, як WM_CLASS(STRING) = "Navigator", "Firefox". Виберіть один із класів, наприклад, Firefoxу цьому прикладі
  4. Додайте клас як значення StartupWMClassу .desktopфайлі. Наприклад,StartupWMClass=Firefox
  5. Збережіть .desktopфайл, закрийте програму та відкрийте її знову. Тепер у пусковій установці має бути лише 1 значок

3
Для тих, хто має таку ж проблему в GNOME, ви можете скористатися MenuLibre: редагуючи відповідний запис, ви знайдете поле для встановлення StatupWMClass у списку, який відображається при натисканні кнопки «Додатково»
conceptdeluxe

Якщо хтось намагається вирішити проблему з mendeleyвиконуваним файлом, не забудьте також відредагувати .../bin/install-mendeley-link-handler.sh, оскільки він переосмислює .desktopфайл під час кожного запуску
MInner

TLDR; * .desktop ім'я файлу = WM_CLASS (STRING) останній елемент, але нижній регістр. Докладніше: мені довелося вирішити цю проблему під час створення ярлика "Firefox Developer edition". Ім'я файлу "firefox.desktop" просто затінило стандартний значок Firefox. Використовуючи xprop WM_CLASS та клацнувши у вікні, повертається WM_CLASS (STRING) = "Навігатор", "Firefox Developer Edition". Врешті-решт я перейменував свій .desktop файл таким чином: mv ffde.desktop "firefox developer edition.desktop". (Інша проблема, хоча я не можу клацнути правою кнопкою миші »addToFavorites на іконку з розширення док-станції gnome)
Stphane

1
Якщо ви не хочете / не можете змінювати оригінальний файл .desktop у папку / usr / share / applications, ви можете скопіювати файл у свою локальну папку ~ / .local / share / застосунки та змінити файл тут. Таким чином у вас буде системний оригінальний файл (ймовірно, наданий розробником / дистрибутивом) та індивідуальний файл, який переосмислює вихідний файл на панелі програм gnome-shell. Копіювання у вашу локальну папку бажано, оскільки файл у / usr / share / застосунках може бути повернутий у наступному оновленні пакета.
Вініцій А. Хорхе

У кількох додатках немає WM_CLASS, або принаймні xprop не показує його. Чи можна це зробити з іншим майном? Наприклад, регулярний вираз на WM_NAME?
jws

3

StartupWMClass

Ви можете використовувати StartupWMClass для групування вікон за класами.

Дивіться цю тему для додаткової інформації

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.