1

Как предотвратить влияние тем, которые я установил в Ubuntu, на внешний вид Firefox? Изменение внешнего вида окна - это нормально, но это меняет то, как выглядят мои вкладки, меню и области текстовых полей.

2 ответа2

5

Я боюсь, что это невозможно, если не было функции, специально созданной для этого, поскольку Firefox использует собственные виджеты. Например, кнопка «ОК» в диалоговом окне будет выглядеть так же, как кнопка «ОК» в настройках Firefox. Цель состоит в том, чтобы сделать общий внешний вид для всех родных приложений. Вы можете использовать темы, чтобы изменить внешний вид Firefox по своему вкусу.

0

Есть выход! Я так счастлив, что нашел это - моя тема GTK отлично работает для меню и большинства приложений, но делает выбор цвета в Tilda и многие типы ввода в Firefox (флажки, переключатели, некоторые текстовые области и т.д.) Невидимыми, я Я догадываюсь из-за неправильных предположений обеих сторон о том, как должно работать наследование стилей. Мои извинения, если вы на самом деле не говорите о темах GTK, я не знаю много о других.

В любом случае, вы можете установить переменную GTK_THEME в качестве префикса для графических приложений, из терминала, с рабочего стола или из панели запуска. При тестировании Thunar не соблюдал тему, но Gedit и Firefox сделали.

Запустите из терминала:

GTK_THEME=<theme> <application>

Изменить настольные пусковые установки:

Exec=env GTK_THEME=<theme> <application> %U

См. Https://unix.stackexchange.com/a/185115.

Конечно, вы по-прежнему можете применять темы Firefox - на самом деле вы получите гораздо более надежные результаты, поскольку вы можете самостоятельно изменять свою среду и темы Firefox. Это также означает, что вы можете проверить тему / оболочку приложения с различными собственными темами (даже в пакетном режиме!) без изменения собственной конфигурации. Для этого я бы порекомендовал создать новый профиль Firefox с установленной темой браузера, чтобы протестировать его.

Есть несколько предостережений; Во-первых, многие приложения имеют тонкую оболочку, которая проверяет переменные среды, чтобы подготовить вызов основной программы, и, если они пропустят эту переменную, непреднамеренно заточат ее или намеренно отвергнут ее, все ставки отключены. Во-вторых, графическое приложение с оберткой или без нее также должно быть готово и способно прочитать эти настройки. Для QT я нашел следующее:

QApplication::setDesktopSettingsAware

Устанавливает, должен ли Qt использовать стандартные цвета, шрифты и т.д. Системы для включения. По умолчанию это правда.

http://pyqt.sourceforge.net/Docs/PyQt4/qapplication.html#setDesktopSettingsAware

Таким образом, наборы инструментов могут предоставлять интерфейсы для наследования тем в целом, но почти всегда есть способ обойти это. Для сравнения, что если вы хотите использовать GTK для нативных элементов в QT? Очевидно, есть несколько методов красной сельди и менее известный метод, который не работает для всех.

https://stackoverflow.com/questions/40455844/make-qt-application-use-gtk-theme

Мой кошмар пользовательского интерфейса с Firefox закончился, и, надеюсь, ваш тоже. Если в будущем у вас возникнут подобные проблемы, попробуйте протестировать в chroot, VM или новом профиле пользователя, чтобы увидеть, какие переменные находятся в игре. Это лучшее из того, что я могу предложить.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .