Двойные иконки приложений в доке Ubuntu


26

Я использую Ubuntu 17.10 с оболочкой GNOME и темой значков Numix-Circle.

При наведении курсора на значок Numix для Nightly Web Browser, который прикреплен к док-станции, я получаю заголовок «Nightly Web Browser».

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

Но когда я запускаю программу, внизу появляется еще одна иконка с названием «Nightly».

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

Ответы:


39

Вам необходимо добавить правильную StartupWMClassстроку в .desktopпанель запуска, соответствующую приложению (обратитесь к этому ). Следуй этим шагам:

  1. Откройте Файлы и перейдите в свою /usr/share/applicationsпапку. Найдите файл «Nightly» (т.е. модуль запуска приложения, которое вы хотите исправить) и скопируйте его.
  2. Вставьте файл в ~/.local/share/applications. Это должно выглядеть как файл с именем <filename>.desktop.
  3. Щелкните правой кнопкой мыши по этому .desktopфайлу и откройте в текстовом редакторе.
  4. Запустите «Nightly» (т.е. приложение, которое вы хотите исправить) из « Активности ».
  5. Запустить xprop WM_CLASSв Терминале.
  6. Наведите курсор на открытое окно «Ночной». Курсор уже должен превратиться в перекрестие. Нажмите. Вы должны получить WM_CLASSстроку для «Nightly» в терминале.
  7. В .desktopфайл, открытый в текстовом редакторе и добавьте следующую строку

    StartupWMClass=OBTAINED-VALUE
    

    Вместо того, чтобы OBTAINED-VALUEпоставить значение, которое вы получили на шаге 6 без кавычек.

  8. Сохраните .desktopфайл.

2
Я пытаюсь сделать то же самое с PyCharm. Получил "sun-awt-X11-XFramePeer", "jetbrains-pycharm-ce"вывод на шаг 6. Я использовал StartupWMClass=jetbrains-pycharm-ceи все работает.
d4nyll

4
9. Переименуйте файл .desktop в OBTAINED-VALUE.desktop (например, jetbrains-phpstorm.desktop вместо phpstorm.desktop), работает в Ubuntu 18.04
Алексей Дерягин,

1
Спасибо за ответ. Было бы очень приятно получить объяснение того, что происходит. Я не хочу слепо следовать некоторым инструкциям. Что происходит и что делает исправление? Было бы здорово, если бы кто-то мог помочь.
рынки

1
@marts Пожалуйста, пройдите через это для объяснений: askubuntu.com/questions/367396/…
pomsky

1
@AlekseyDeryagin На шаге 6 я получил WM_CLASS: not found. Так как некорректно работающее приложение было kile и именем файла org.kde.kile.desktop, я просто добавил строку, StartupWMClass=kileи она работает. Мое дикое предположение состоит в том, что последняя разделенная .desktopточкой точка части имени файла (прямо перед ) должна соответствовать значению StartupWMClass.
Ansa211
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.