- updated switch assets - new high contrast assets - use non-hardcoded bg color for dash - updated palette colors - add missing color definitions to hc - increase radii of many elements - update search entry style - align icon better in search entry - restyle panel popovers without arrow and add drop shadow - used theme colors in panel - fix some things with popover labels - new slider style - some light variant fixes - fixes to the calendar popover - day with event styles - better calendar-today.svg and dark variant - shorten calendary weekday header - saner padding - overhaul popover menu style - minor fixes to app grid and alt-tab switch - updated looking glass styles - nm-dialog adjustments - search results adjustments - expand out panel button hover styles - button drawing adjustments - adjust notifications area - update on-screen keyboard style - better keyboard symbolic icon assets - change keyboard symbolic icons to 24px - improved keyboard style - gave the keyboard word suggestions some styles - less obnoxious saner media control buttons - cleaned up the css for the dash - reworked the alt-tab switcher style - sync style on workspace switcher - adjusted dialog button style drawing - popover submenu redrawing adjustement Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2104>
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.