gtk2/gtk/theme/Adwaita
Daniel Boles b92e688141 themes: Fix swapped borders on RTL PathBar buttons
.linked assumes the container is a GtkBox, which is documented as never
flipping children in RTL, so :first-child is always the left child, etc.
GtkBox does that by reordering its CSS nodes when the direction changes.

But most widgets don’t do that, so :first|last-child are 1st/last ADDED
and swap sides in RTL. GtkPathBar is so, and ignoring that in our themes
meant that in RTL, its left/right buttons got each other’s borders. Yuk!

This patch adds the groundwork for supporting widgets like that, via the
%linked_flippable placeholder, and applies that to override buttons in
  filechooser .path-bar.linked > button
so that the correct borders get applied to those buttons when using RTL.

Note that I select only PathBars within a FileChooser because we also
have NautilusPathBar, which also uses widget.path-bar – but *does* flip
its nodes for RTL already, so letting that get affected broke it again!

https://bugzilla.gnome.org/show_bug.cgi?id=772817
2018-04-22 22:06:50 +01:00
..
assets
_colors-public.scss
_colors.scss
_common.scss themes: Fix swapped borders on RTL PathBar buttons 2018-04-22 22:06:50 +01:00
_drawing.scss
assets.svg
assets.txt
gtk-contained-dark.css themes: Fix swapped borders on RTL PathBar buttons 2018-04-22 22:06:50 +01:00
gtk-contained-dark.scss
gtk-contained.css themes: Fix swapped borders on RTL PathBar buttons 2018-04-22 22:06:50 +01:00
gtk-contained.scss
gtk-dark.css
gtk.css
meson.build
parse-sass.sh
README
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.

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.