[yocto] [matchbox-panel-2][PATCH] showdesktop: Make sure active state is initialized

Jussi Kukkonen jussi.kukkonen at intel.com
Sun Mar 20 04:24:37 PDT 2016


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 <jussi.kukkonen at intel.com>
---
 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




More information about the yocto mailing list