Как изменить цвет фона строки заголовка Nautilus?

Вопрос или проблема

Я хочу, чтобы цвет фона заголовка Nautilus (когда окно активно) значительно отличался от заголовков окон в фоне. По умолчанию цвет фона слишком похож на фоновое окно.

Я использую Ubuntu 20.04 и тему Yaru по умолчанию.

Это то, что я хочу изменить

Я попытался изменить файл /home/ubuntu/.config/gtk-3.0/gtk.css следующим образом. Изменения ниже успешно изменяют цвет фона заголовка для большинства окон (Firefox, Thunderbird и другие), но не влияют на Nautilus, System Monitor или Settings:

/* используйте синий, когда АКТИВЕН */
.nautilus-window .titlebar, .titlebar {
    background: #1856dd;
    color:white; 
}
/* используйте темно-серый, когда НЕ активен */
.nautilus-window .titlebar:backdrop, .titlebar:backdrop {
    background: #3E3D3A;
    color:#807D78;
}

Есть предложения?

В Ubuntu 24.04 правила работают для меня, если они сохранены как ~/.config/gtk-4.0/gtk.css.

Также, в v24 Nautilus требует небольших корректировок полей, чтобы левая и правая стороны заголовка имели одинаковую высоту. Используя те же цвета, что и в вопросе:

.titlebar, headerbar {
    background: #1856dd;
    color:white;
}
.titlebar:backdrop, headerbar:backdrop {
    background: #3E3D3A;
    color:#807D78;
}
headerbar {
    margin-top: -3px;
    margin-bottom: -3px;
    padding-top: 3px;
    padding-bottom: 3px;
}
.sidebar-pane headerbar {
    margin-top: 0px;
    margin-bottom: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
}

Я не ограничивал это только Nautilus. Это, кажется, хорошо работает для Text Editor тоже, но я не тестировал это тщательно.

Ответ или решение

Изменение цвета фона заголовка окна в Nautilus на Ubuntu 20.04 с использованием темы по умолчанию Yaru может быть непростой задачей из-за специфики GTK-тем и различий в версиях GTK, которые использует каждое приложение. В данной ситуации, несмотря на успешное изменение цвета заголовка для некоторых приложений, как Firefox или Thunderbird, другие, такие как Nautilus, остаются невосприимчивыми к изменениям в файле gtk.css. Рассмотрим теоретические основы, примеры и практическое применение, чтобы помочь в решении этой задачи.

Теория

GTK (GIMP Toolkit) — это набор инструментов для создания графического пользовательского интерфейса в Linux. GTK-темы управляют внешним видом приложений, и изменения можно вносить с помощью CSS-файлов (например, ~/.config/gtk-3.0/gtk.css для GTK3 или ~/.config/gtk-4.0/gtk.css для GTK4). В случае с Ubuntu 20.04 и темой Yaru используется преимущественно GTK3. Следует учитывать, что Nautilus и другие предустановленные приложения могут потребовать изменения стилей непосредственно в GTK или через темы.

При работе с GTK темами цвет заголовка окна переключается в зависимости от состояния окна (активное или неактивное). Стандартно для управления этими параметрами применяются псевдоклассы CSS, такие как :backdrop для неактивных окон.

Пример

Ваш текущий подход к изменению CSS для GTK3 выглядит следующим образом:

/* использование синего, когда активное */
.nautilus-window .titlebar, .titlebar {
    background: #1856dd;
    color:white; 
}
/* использование темно-серого, когда неактивное */
.nautilus-window .titlebar:backdrop, .titlebar:backdrop  {
    background: #3E3D3A;
    color:#807D78;
}

Это изменение CSS изменяет цвет большинства приложений, но не Nautilus. Причина этого может находиться в специфике темы, которая применяется к Nautilus и системным приложениям, таким как Мониторинг системы или Настройки.

Теперь рассмотрим, как можно изменить подход для решения вашей задачи.

Применение

  1. Проверка версии GTK: Убедитесь, что вы работаете с правильной версией GTK для вашего приложения. Для Ubuntu 20.04 это, скорее всего, GTK3, но могут быть исключения.

  2. Тонкая настройка темы Yaru: В некоторых случаях модификации темы требуется делать непосредственно внутри папки темы (например, в /usr/share/themes/Yaru/gtk-3.0/). Однако, это может повлечь изменения для всех пользователей системы.

  3. Попробуйте ~/.config/gtk-4.0/gtk.css: Хотя Ubuntu 20.04 в основном использует GTK3, для приложений, которые могут использовать GTK4, можно также попробовать использовать этот файл. В вашем случае, если какие-то приложения начинают использовать GTK4, эта модификация может быть полезной.

  4. Создание и применение кастомной темы: Если предыдущие шаги не дали результата, рассмотрите возможность создания собственной темы. Это можно сделать на основе существующей, изменив нужные параметры. Для этого потребуется создать копию темы Yaru, внести изменения и применить это как отдельную тему через настройки стиля (например, с помощью инструментов GNOME Tweaks).

  5. Ручная отладка: Используйте инструменты отладки CSS для GTK, чтобы уточнить специфичность селекторов и отслеживать, какие стили применяются конкретно к Nautilus и другим системным приложениям. Для этого подойдет инструмент gtk-inspector, который позволяет проверять и изменять CSS-прямо в режиме реального времени в Ubuntu.

  6. Убедитесь в правильности привязки стилей: Проверьте специфичность ваших CSS-селекторов. Возможно, вам нужно использовать более специализированные селекторы, которые распространяются только на окна Nautilus, если стандартного .titlebar недостаточно.

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

Заключение

Изменение цвета заголовка окон в приложениях Ubuntu, таких как Nautilus, требует знания основ GTK-темирования и специфической работы с CSS. В ситуации, когда изменения не вступают в силу, необходимо проверить версию GTK, использующиеся темы и специфичность селекторов. Вы можете попробовать напрямую изменять тему Yaru, либо создать и применить кастомную тему, подходящую под ваши нужды. Также не стоит пренебрегать инструментами отладки, которые могут внести значительную ясность в процесс настройки.

Оцените материал
Добавить комментарий

Капча загружается...