Package org.gnome.gtk

Class CssProvider

java.lang.Object
All Implemented Interfaces:
Proxy, StyleProvider

@Generated("io.github.jwharm.JavaGI") public class CssProvider extends GObject implements StyleProvider
GtkCssProvider is an object implementing the GtkStyleProvider interface for CSS.

It is able to parse CSS-like input in order to style widgets.

An application can make GTK parse a specific CSS style sheet by calling loadFromFile(org.gnome.gio.File) or loadFromResource(java.lang.String) and adding the provider with StyleContext.addProvider(org.gnome.gtk.StyleProvider, int) or StyleContext.addProviderForDisplay(org.gnome.gdk.Display, org.gnome.gtk.StyleProvider, int).

In addition, certain files will be read when GTK is initialized. First, the file $XDG_CONFIG_HOME/gtk-4.0/gtk.css is loaded if it exists. Then, GTK loads the first existing file among XDG_DATA_HOME/themes/THEME/gtk-VERSION/gtk-VARIANT.css, $HOME/.themes/THEME/gtk-VERSION/gtk-VARIANT.css, $XDG_DATA_DIRS/themes/THEME/gtk-VERSION/gtk-VARIANT.css and DATADIR/share/themes/THEME/gtk-VERSION/gtk-VARIANT.css, where THEME is the name of the current theme (see the Gtk.Settings:gtk-theme-name setting), VARIANT is the variant to load (see the Gtk.Settings:gtk-application-prefer-dark-theme setting), DATADIR is the prefix configured when GTK was compiled (unless overridden by the GTK_DATA_PREFIX environment variable), and VERSION is the GTK version number. If no file is found for the current version, GTK tries older versions all the way back to 4.0.

To track errors while loading CSS, connect to the Gtk.CssProvider::parsing-error signal.