From a0b5fca04da208990f3c40e65dbb045da4cdb35e Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen Date: Sun, 20 Mar 2016 13:24:37 +0200 Subject: [PATCH] showdesktop: Make sure active state is initialized There are cases (in qemu at least) where set_active() is never called on startup. Make sure we initialize the active state so the icon gets loaded and the applet is not confused about the current state. Signed-off-by: Jussi Kukkonen Signed-off-by: Ross Burton Upstream-Status: Backport --- applets/showdesktop/showdesktop.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/applets/showdesktop/showdesktop.c b/applets/showdesktop/showdesktop.c index 61dd5c2..33c13e1 100644 --- a/applets/showdesktop/showdesktop.c +++ b/applets/showdesktop/showdesktop.c @@ -181,6 +181,12 @@ button_clicked_cb (GtkButton *button, &xev); } +static void +realize_cb (GtkWidget *button, ShowDesktopApplet *applet) +{ + sync_applet (applet); +} + G_MODULE_EXPORT GtkWidget * mb_panel_applet_create (const char *id, GtkOrientation orientation) @@ -216,6 +222,10 @@ mb_panel_applet_create (const char *id, "clicked", G_CALLBACK (button_clicked_cb), applet); + g_signal_connect (button, + "realize", + G_CALLBACK (realize_cb), + applet); g_object_weak_ref (G_OBJECT (button), (GWeakNotify) show_desktop_applet_free, -- 2.7.0