CssProvider
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 method@Gtk.CssProvider.load_from_file or method@Gtk.CssProvider.load_from_resource and adding the provider with method@Gtk.StyleContext.add_provider or func@Gtk.StyleContext.add_provider_for_display.
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 property@Gtk.Settings:gtk-theme-name setting), VARIANT
is the variant to load (see the property@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 signal@Gtk.CssProvider::parsing-error signal.
Constructors
Properties
Functions
Signals that a parsing error occurred.
Loads @data into @css_provider.
Loads @data into @css_provider.
Loads the data contained in @file into @css_provider.
Loads the data contained in @path into @css_provider.
Loads the data contained in the resource at @resource_path into the @css_provider.
Loads @string into @css_provider.