Где я могу найти справочную схему для темы GNOME 3 (например, Adwaita)?


8

Я обновился до Fedora 21, который освещает GNOME 3.14 (плюс соответствующий материал GTK +). К сожалению, похоже, что это конкретное обновление искажает многие мои старые темы, написанные для устаревших версий GNOME 3. Там, где раньше они могли пискать, теперь они выглядят немного неуместными.

Я не предполагаю заново изобретать колесо: я был бы очень рад взять уже существующий шаблон CSS (например, спецификацию Adwaita 3.14 по умолчанию) и настроить его здесь и там, на мой вкус; не будет никакого необычного полета. Представьте себе волосы, которые я вырвал, когда заглянул в /usr/share/themes/Adwaita/gtk-3.0/gtk.css:

/* Adwaita is the default theme of GTK+ 3, this file is not used */

Это ставит меня в рассол. Мне не хватает Google-фу, чтобы выкопать документацию о том, где это может быть (что еще хуже, у меня есть чувство, что это что-то неявно очевидное для людей GNOME, по которым я скучаю), и по какой-то причине веб-сайт разработчика GNOME сопротивляется мои попытки исследования их тематической спецификации.

Короче говоря, я хотел бы найти спецификацию девственной темы для GNOME 3.14, если предположить, что она существует. Как я могу это сделать или как я могу изменить свой подход?

Ответы:


13

В этом конкретном .cssфайле есть только одна строка, потому что тема по умолчанию (Adwaita) поставляется в двоичном виде:

Adwaita is a complex theme, so to keep it maintainable it's written and processed in SASS, the generated CSS is
then transformed into a gresource file during gtk build and used at runtime in a non-legible or editable form.

Поскольку код был включен в gtk+, вы можете просмотреть исходные файлы ЗДЕСЬ . Согласно их readme:

_colors.scss        - global color definitions. We keep the number of defined colors to a necessary minimum, most colors 
                      are derived form a handful of basics. It covers both the light variant and the dark variant.
_colors-public.scss - SCSS colors exported through gtk to allow for 3rd party apps color mixing.
_drawing.scss       - drawing helper mixings/functions to allow easier definition of widget drawing under specific context.
                      This is why Adwaita isn't 15000 LOC.
_common.scss        - actual definitions of style for each widget. This is where you are likely to add/remove your changes.

Справочные .cssфайлы:

gtk-contained.css
gtk-contained-dark.css

Вот более старое практическое руководство, некоторые вещи больше не применяются (как я уже сказал, исходный код находится gtk+сейчас, как gnome-themes-standardбыло объявлено устаревшим), но он должен привести вас на правильный путь:

Как взломать тему GNOME Adwaita GTK


0

Я копирую свой собственный TLDR из аналогичного вопроса о цветах верхней панели окна.

~ / .Config / GTK-3.0 / gtk.css

/* REMOVE "-dark" IF USING LIGHT THEME */
@import url("resource:///org/gtk/libgtk/theme/Adwaita/gtk-contained-dark.css");

/* THIS ONE CHANGES TITLEBAR COLOR */
headerbar.titlebar,
headerbar.titlebar:active {
    background:#3F51B5;
}

/* THIS CHANGES NAUTILUS SEARCH BAR */
.horizontal.path-bar-box,
row:selected:backdrop {
     background:#3F51B5;
     border-color:#3F51B5;
}

Для отладки и поиска подходящих селекторов CSS откройте приложение GTK3 с переменной среды GTK_DEBUG = interactive. Например,

GTK_DEBUG=interactive nautilus

Это должно открыть инспектор для окна GTK. Если его там нет, нажмите Ctrl + Shift + I.

скриншот инспектора

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.