Обычно этого делать не следует. Как правило, если ваше приложение ведет себя по-разному в зависимости от среды рабочего стола, это будет неприятным сюрпризом для любого пользователя, который переключается между ними.
Альтернатива
Используйте команды, не зависящие от DE, например xdg-open
. Преимущества:
- Вам не нужно писать логику самостоятельно (xdg-utils уже сделал это)
- Более удобный. Он соответствует фактическим предпочтениям пользователя; многие пользователи используют один DE, но предпочитают некоторые приложения из другого DE.
- Поддерживает другие DE, такие как XFCE, LXDE, Unity и т. Д.
Например, вместо того, чтобы открывать URL-адрес в Firefox или Konqueror в соответствии с текущим запущенным DE, передайте URL-адрес xdg-open
, чтобы открыть его в предпочтительном для пользователя приложении. (Пользователь может быть пользователем Chromium.) Не вводите жестко nautilus
или dolphin
для GNOME и KDE; вместо этого откройте путь с помощью xdg-open
.
Точно так же для других форм взаимодействия с DE попробуйте использовать спецификации Freedesktop, а не пытаться угадайте, что работает DE. Существуют стандарты для перемещения файлов в корзину, добавления апплетов на панели задач и добавления файлов. в список последних файлов, среди прочего.
person
Mechanical snail
schedule
19.09.2012