From f18a858323802b474e2ea201ec09de37b0828c11 Mon Sep 17 00:00:00 2001 From: Marko Lindqvist Date: Mon, 4 Sep 2023 10:19:15 +0300 Subject: [PATCH 3/3] gtk3(.22): Apply theme to all dialogs See osdn #48580 Signed-off-by: Marko Lindqvist --- client/gui-gtk-3.0/themes.c | 11 ++++++----- client/gui-gtk-3.22/themes.c | 9 +++++---- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/client/gui-gtk-3.0/themes.c b/client/gui-gtk-3.0/themes.c index 4785efabef..432f9c1cab 100644 --- a/client/gui-gtk-3.0/themes.c +++ b/client/gui-gtk-3.0/themes.c @@ -45,7 +45,8 @@ void gui_load_theme(const char *directory, const char *theme_name) if (fc_css_provider == NULL) { fc_css_provider = gtk_css_provider_new(); - gtk_style_context_add_provider(gtk_widget_get_style_context(toplevel), + gtk_style_context_add_provider_for_screen( + gtk_widget_get_screen(toplevel), GTK_STYLE_PROVIDER(fc_css_provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); } @@ -70,18 +71,18 @@ void gui_clear_theme(void) { bool theme_loaded; - /* try to load user defined theme */ + /* Try to load user defined theme */ theme_loaded = load_theme(gui_options.gui_gtk3_default_theme_name); - /* no user defined theme loaded -> try to load Freeciv default theme */ + /* No user defined theme loaded -> try to load Freeciv default theme */ if (!theme_loaded) { theme_loaded = load_theme(FC_GTK3_DEFAULT_THEME_NAME); if (theme_loaded) { sz_strlcpy(gui_options.gui_gtk3_default_theme_name, FC_GTK3_DEFAULT_THEME_NAME); } } - - /* still no theme loaded -> load system default theme */ + + /* Still no theme loaded -> load system default theme */ if (!theme_loaded) { static GtkCssProvider *default_provider = NULL; diff --git a/client/gui-gtk-3.22/themes.c b/client/gui-gtk-3.22/themes.c index e975f68f1b..38e8bac674 100644 --- a/client/gui-gtk-3.22/themes.c +++ b/client/gui-gtk-3.22/themes.c @@ -45,7 +45,8 @@ void gui_load_theme(const char *directory, const char *theme_name) if (fc_css_provider == NULL) { fc_css_provider = gtk_css_provider_new(); - gtk_style_context_add_provider(gtk_widget_get_style_context(toplevel), + gtk_style_context_add_provider_for_screen( + gtk_widget_get_screen(toplevel), GTK_STYLE_PROVIDER(fc_css_provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); } @@ -68,10 +69,10 @@ void gui_clear_theme(void) { bool theme_loaded; - /* try to load user defined theme */ + /* Try to load user defined theme */ theme_loaded = load_theme(GUI_GTK_OPTION(default_theme_name)); - /* no user defined theme loaded -> try to load Freeciv default theme */ + /* No user defined theme loaded -> try to load Freeciv default theme */ if (!theme_loaded) { theme_loaded = load_theme(GUI_GTK_DEFAULT_THEME_NAME); if (theme_loaded) { @@ -79,7 +80,7 @@ void gui_clear_theme(void) } } - /* still no theme loaded -> load system default theme */ + /* Still no theme loaded -> load system default theme */ if (!theme_loaded) { static GtkCssProvider *default_provider = NULL; -- 2.40.1