gtk2/gtk/theme/Adwaita
Matthias Clasen 0bf136a902 Merge branch 'adwaita-remove-selectionmode-assets-master' into 'master'
Adwaita: Drop checkbox-selectionmode assets

See merge request GNOME/gtk!634
2019-03-20 14:10:18 +00:00
..
assets Adwaita: Drop checkbox-selectionmode assets 2019-03-13 14:12:45 +05:00
_colors-public.scss Adwaita: export yet another named color for insensitive bg/fg... 2016-07-24 18:04:51 +02:00
_colors.scss Adwaita: sync with stable styling 2019-02-06 14:01:38 +01:00
_common.scss Merge branch 'adwaita-selectionmode-checkboxes-master' into 'master' 2019-03-20 14:10:05 +00:00
_drawing.scss Adwaita: sync with stable styling 2019-02-06 14:01:38 +01:00
assets.svg Adwaita: Drop checkbox-selectionmode assets 2019-03-13 14:12:45 +05:00
assets.txt Adwaita: scale slider assets refresh 2016-02-20 16:07:00 +01:00
gtk-contained-dark.css Merge branch 'adwaita-selectionmode-checkboxes-master' into 'master' 2019-03-20 14:10:05 +00:00
gtk-contained-dark.scss
gtk-contained.css Merge branch 'adwaita-selectionmode-checkboxes-master' into 'master' 2019-03-20 14:10:05 +00:00
gtk-contained.scss
gtk-dark.css
gtk.css
meson.build meson: Rebuild the SCSS-based themes if sassc is available 2017-06-01 14:56:32 +01:00
parse-sass.sh Adwaita: add a sassc based parse-sass.sh script 2017-05-03 17:31:50 +02:00
README themes: Drop the "plus" 2019-02-05 11:25:41 +01:00
render-assets.sh Recover assets rendering script 2017-05-02 12:37:36 +01:00

Summary
-------

* Do not edit the CSS directly, edit the source SCSS files
* To be able to use the latest/adequate version of sass, install sassc
* The configure script will detect whether or not you have sassc installed;
  if you do, it will regenerate the CSS every time you modify the SCSS files.

How to tweak the theme
----------------------

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.

It is very likely your change will happen in the _common.scss file. That's where
all the widget selectors are defined. Here's a rundown of the "supporting"
stylesheets, that are unlikely to be the right place for a drive by stylesheet
fix:

_colors.scss        - global color definitions. We keep the number of defined
                      colors to a necessary minimum, most colors are derived
                      from 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.
                      
You can read about SASS at http://sass-lang.com/documentation/. Once you make
your changes to the _common.scss file, GTK will rebuild the CSS files.