libadwaita has a dedicated page for style classes such as “.title-1” and “.dim-label”, but GTK 4 documentation doesn’t have this. Where can I find these style classes for GTK 4?
GTK4 does not really define style classes: that’s the job of a platform library, like libadwaita, or the job of application-specific styling.
Ok, thanks for explaining!
There are a few things however that could be documented. For example the fact that if someone implements a GtkOrientable
widget this needs to have a horizontal
or a vertical
CSS class assigned; or the fact that there are cases in which children widget need to have a right
, bottom
, left
or top
CSS class assigned… I don’t know if these are currently documented, but I learned about them only by looking at the source code of GTK. Maybe a “CSS class list” page for GTK with all these cases would not be a bad idea…
Each widget type that relies on a class or a selector already has those selectors documented.
The documentation for GtkOrientable
is missing a note about widgets implementing the interface adding the horizontal
/vertical
CSS classes, that’s true. Feel free to file an issue about it.
Additional CSS classes that are left to 3rd party code are not going to be documented; just because the default style in GTK4 uses them it doesn’t mean they are part of any stable API. If you want a stable style API, then you want to use libadwaita—that’s the whole point of that library.
I don’t know, sometimes by looking at GtkInspector I see that GTK does use CSS classes for specific purposes. So far the way I had understood the difference between GTK and libadwaita concerning CSS classes was that libadwaita uses “higher level” classes (things like card
, suggested-action
, etc.) while GTK used “lower level” classes, for expressing more primitive things (like horizontal
, vertical
, bottom
, etc.). But if these will not be part of any GTK standard so be it.