gnome-shell/data/theme
Florian Müllner cf89a6d01e quickSettings: Split menu toggle
Menu toggles are currently regular toggles with an additional
arrow button. This allows for a simpler implementation, but
has downsides with regards to keyboard navigation and hover
feedback.

To make it more obvious that the two parts of the menu toggle
perform different actions, change the overall structure of the
toggle to *contain* a regular toggle and the menu button.

That way each element uses its own hover effect, and shows up
in the keynav focus chain.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5964

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2632>
2023-02-09 21:53:07 +00:00
..
gnome-shell-sass quickSettings: Split menu toggle 2023-02-09 21:53:07 +00:00
calendar-today-light.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
calendar-today.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
checkbox-focused.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
checkbox-off-focused-light.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
checkbox-off-focused.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
checkbox-off-light.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
checkbox-off.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
checkbox.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
dash-placeholder.svg dash: Improve DND to dash and allow reordering 2010-11-29 16:35:54 +01: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-start.svg welcomeDialog: Add “welcome” dialog 2021-02-05 13:41:26 +00:00
gnome-shell.scss theme: use a widgets.scss file for widget import 2020-01-09 16:43:26 +01:00
meson.build lockscreen: Style cleanup for lock and login 2023-01-06 11:29:31 +00:00
pad-osd.css padOsd: Figure out label/edition UI positions from unchanged fonts 2022-09-02 19:24:47 +00:00
process-working.svg spinner: use a 60fps spinner 2015-08-05 13:44:32 +02:00
README.md docs: Use Markdown 2018-05-23 19:03:01 +02:00
running-indicator.svg theme: Make the running indicator look as it's supposed to 2011-06-27 12:53:38 -04:00
toggle-off-hc.svg style: High Contrast improvments 2022-11-24 09:54:02 +00:00
toggle-off-light.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
toggle-off.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
toggle-on-hc.svg theme: Stylesheet papercuts and other visual fixes 2022-02-14 13:35:41 -03:30
toggle-on-light.svg stylesheet: Fixes and missed updates for the 42 refresh 2022-01-21 18:11:37 +00:00
toggle-on.svg theme: Minor fixes from the 42 beta 2022-02-22 18:39:41 +00:00
workspace-placeholder.svg theme: Rotate placeholder for horizontal workspace-thumbnails 2021-05-01 00:16:29 +03:00

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.