gnome-shell/data/theme
Sam Hewitt eacabbf443 panel: Stylesheet updates and minor improvements for panel buttons
- spin out all the panel button styling into a drawing mixin
- clean up the styles generally
- make special cases for the clock and non-flat buttons
- contrast fixes for non-flat buttons, fixes #6768
- new stop icon for the screen recording/cast indicators

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2804>
2023-06-21 10:28:13 +00:00
..
gnome-shell-sass panel: Stylesheet updates and minor improvements for panel buttons 2023-06-21 10:28:13 +00:00
calendar-today-light.svg
calendar-today.svg
checkbox-focused.svg
checkbox-off-focused-light.svg
checkbox-off-focused.svg
checkbox-off-light.svg
checkbox-off.svg
checkbox.svg
dash-placeholder.svg
gnome-shell-dark.scss theme: Include both dark and light variant in resource 2023-05-25 17:10:53 +02:00
gnome-shell-high-contrast.scss styling: Don't switch app icons to symbolic for HC 2022-11-28 14:12:33 +00:00
gnome-shell-light.scss theme: Include both dark and light variant in resource 2023-05-25 17:10:53 +02:00
gnome-shell-start.svg
meson.build theme: Include both dark and light variant in resource 2023-05-25 17:10:53 +02:00
pad-osd.css
process-working.svg
README.md
running-indicator.svg
toggle-off-hc.svg style: High Contrast improvments 2022-11-24 09:54:02 +00:00
toggle-off-light.svg
toggle-off.svg
toggle-on-hc.svg
toggle-on-light.svg
toggle-on.svg
workspace-placeholder.svg

Summary

Do not edit the CSS directly, edit the source SCSS files and the CSS files will be generated automatically when building with meson + ninja and left inside the build directory to be incorporated into the gresource XML (you'll need to have sassc installed).

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:

File Description
_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 is an exact copy of the gtk+ counterpart. Light theme is used for the classic theme and dark is for GNOME3 shell default.
_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 on its web page. Once you make your changes to the _common.scss file, you can run ninja to generate the final CSS files.