summaryrefslogtreecommitdiff
path: root/src/gs-theme-manager.c
diff options
context:
space:
mode:
authorrbuj <[email protected]>2021-11-02 18:11:21 +0100
committerraveit65 <[email protected]>2021-11-15 14:04:41 +0100
commit8297a0f47b43f5e051ad2696d0843d23b236e7ec (patch)
tree5db07a8c7f166f0a44a756e6f3a9950ee60e7abb /src/gs-theme-manager.c
parented6e6065bf0e85b64317b5a34b9f7a36a0c839a6 (diff)
downloadmate-screensaver-8297a0f47b43f5e051ad2696d0843d23b236e7ec.tar.bz2
mate-screensaver-8297a0f47b43f5e051ad2696d0843d23b236e7ec.tar.xz
gs-theme-manager: reload on menu_tree changed
Diffstat (limited to 'src/gs-theme-manager.c')
-rw-r--r--src/gs-theme-manager.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/gs-theme-manager.c b/src/gs-theme-manager.c
index 6033563..da622a9 100644
--- a/src/gs-theme-manager.c
+++ b/src/gs-theme-manager.c
@@ -393,11 +393,25 @@ get_themes_tree (void)
}
static void
+on_applications_changed (MateMenuTree *menu_tree)
+{
+ GError *error = NULL;
+
+ if (!matemenu_tree_load_sync (menu_tree, &error)) {
+ g_debug ("Load matemenu tree got error: %s\n", error->message);
+ g_error_free (error);
+ }
+}
+
+static void
gs_theme_manager_init (GSThemeManager *theme_manager)
{
theme_manager->priv = gs_theme_manager_get_instance_private (theme_manager);
theme_manager->priv->menu_tree = get_themes_tree ();
+ g_signal_connect (theme_manager->priv->menu_tree, "changed",
+ G_CALLBACK (on_applications_changed),
+ NULL);
}
static void