Color Scheme
Setting a dark or light style for your app
Last updated
Was this helpful?
Was this helpful?
protected override void activate () {
var gtk_settings = Gtk.Settings.get_default ();
gtk_settings.gtk_application_prefer_dark_theme = true;
}executable(
meson.project_name(),
'src/Application.vala',
dependencies: [
dependency('granite-7'),
dependency('gtk4')
],
install: true
)protected override void activate () {
// First we get the default instances for Granite.Settings and Gtk.Settings
var granite_settings = Granite.Settings.get_default ();
var gtk_settings = Gtk.Settings.get_default ();
// Then, we check if the user's preference is for the dark style and set it if it is
gtk_settings.gtk_application_prefer_dark_theme = granite_settings.prefers_color_scheme == Granite.Settings.ColorScheme.DARK;
// Finally, we listen to changes in Granite.Settings and update our app if the user changes their preference
granite_settings.notify["prefers-color-scheme"].connect (() => {
gtk_settings.gtk_application_prefer_dark_theme = granite_settings.prefers_color_scheme == Granite.Settings.ColorScheme.DARK;
});
}