diff options
| author | Victor Kareh <[email protected]> | 2026-08-10 15:04:23 -0400 |
|---|---|---|
| committer | Victor Kareh <[email protected]> | 2026-08-10 15:04:23 -0400 |
| commit | a7369fc9bd0c0e7990a377ce581cf0744f09a1aa (patch) | |
| tree | 43a3b8671bc3527c60be9fcdfae975f3f487f43b | |
| parent | c29110425c75494bcdf955ada4517a72d2c52eb1 (diff) | |
| download | mate-terminal-gsettings-changed-signal.tar.bz2 mate-terminal-gsettings-changed-signal.tar.xz | |
terminal-profile: fix disconnect between GUI and gsettingsgsettings-changed-signal
Signal connection used "changed::<profile-name>/" by path but gsettings
uses "changed" by key name, so the GUI was out of sync with gsettings.
Fixes #505
| -rw-r--r-- | src/terminal-profile.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/terminal-profile.c b/src/terminal-profile.c index 634e0bc..a5c4eb2 100644 --- a/src/terminal-profile.c +++ b/src/terminal-profile.c @@ -987,14 +987,11 @@ terminal_profile_constructor (GType type, priv->settings = g_settings_new_with_path (CONF_PROFILE_SCHEMA, concat); g_assert (priv->settings != NULL); g_free (concat); - concat = g_strconcat("changed::", priv->profile_dir, "/", NULL); g_signal_connect (priv->settings, - concat, + "changed", G_CALLBACK(terminal_profile_gsettings_notify_cb), profile); - g_free (concat); - /* Now load those properties from GSettings that were not set as construction params */ pspecs = g_object_class_list_properties (G_OBJECT_CLASS (TERMINAL_PROFILE_GET_CLASS (profile)), &n_pspecs); for (i = 0; i < n_pspecs; ++i) @@ -1153,12 +1150,10 @@ terminal_profile_set_property (GObject *object, concat= g_strconcat (CONF_PROFILE_PREFIX, priv->profile_dir, "/", NULL); priv->settings = g_settings_new_with_path (CONF_PROFILE_SCHEMA, concat); g_free (concat); - concat = g_strconcat("changed::", priv->profile_dir, "/", NULL); g_signal_connect (priv->settings, - concat, + "changed", G_CALLBACK(terminal_profile_gsettings_notify_cb), profile); - g_free (concat); } break; } |
