gtk2/gtk/theme/Adwaita
Timm Bäder 982d73df0b adwaita: Solve junction problem without border image
This genius piece of CSS colors only the top left (or top right in RTL)
pixel of the scrollbar junction.
Doing it this way is better because we don't have to upload a cairo node
every frame.
2020-01-07 17:27:17 +01:00
..
assets
_colors-public.scss
_colors.scss Adwaita: Add color defines from 3.24 2019-10-09 16:57:21 +02:00
_common.scss adwaita: Solve junction problem without border image 2020-01-07 17:27:17 +01:00
_drawing.scss Adwaita: Avoid directly coloring labels wherever possible 2019-11-26 00:39:33 +09:00
assets.svg
assets.txt
gtk-contained-dark.css Adwaita: print dialog tweaks 2019-12-24 12:30:35 -05:00
gtk-contained-dark.scss
gtk-contained.css Adwaita: print dialog tweaks 2019-12-24 12:30:35 -05:00
gtk-contained.scss
gtk-dark.css
gtk.css
meson.build
parse-sass.sh
README Adwaita: update the README 2019-12-24 12:30:54 -05:00
render-assets.sh

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.
* Note that meson always builds out-of-tree, so the modified css files will
  appear in your builddir, and you need to copy them back to the srcdir
  to commit them.

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.