summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2022-12-05 13:58:58 -0300
committerGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2022-12-05 14:16:27 -0300
commitf7f88c1557167d327135f0e215d02032065a1c72 (patch)
tree9ca1e09e42cc8c0525d1ccf2573fc84a0e3b7026
parentb3d4dbdbf164e4a23b6e3e3a3ed800c9f74c9108 (diff)
downloadmutter-f7f88c1557167d327135f0e215d02032065a1c72.tar.gz
frames/window-tracker: Initialize color scheme properly
Previous commit added support for setting the GTK4 theme setting according to the color scheme setting. That's cool. What it didn't add, though, was initializing the GTK4 theme setting to the proper value. That means if the desktop starts at dark style, you'd still get a light titlebar. Fix that by updating the GTK4 theme setting on init as well. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2740>
-rw-r--r--src/frames/meta-window-tracker.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/frames/meta-window-tracker.c b/src/frames/meta-window-tracker.c
index 34c02a6b7..174b8b8c1 100644
--- a/src/frames/meta-window-tracker.c
+++ b/src/frames/meta-window-tracker.c
@@ -89,9 +89,7 @@ meta_window_tracker_get_property (GObject *object,
}
static void
-on_color_scheme_changed_cb (GSettings *interface_settings,
- GParamSpec *pspec,
- MetaWindowTracker *window_tracker)
+update_color_scheme (MetaWindowTracker *window_tracker)
{
GDesktopColorScheme color_scheme;
gboolean is_dark;
@@ -106,6 +104,14 @@ on_color_scheme_changed_cb (GSettings *interface_settings,
}
static void
+on_color_scheme_changed_cb (GSettings *interface_settings,
+ GParamSpec *pspec,
+ MetaWindowTracker *window_tracker)
+{
+ update_color_scheme (window_tracker);
+}
+
+static void
set_up_frame (MetaWindowTracker *window_tracker,
Window xwindow)
{
@@ -409,6 +415,7 @@ meta_window_tracker_init (MetaWindowTracker *window_tracker)
"changed::color-scheme",
G_CALLBACK (on_color_scheme_changed_cb),
window_tracker);
+ update_color_scheme (window_tracker);
window_tracker->frames =
g_hash_table_new_full (NULL, NULL, NULL,