File gnome-power-manager-165471.patch of Package gnome-power-manager

--- gnome-power-manager-2.14.0-orig/src/gpm-tray-icon.c	2006-03-08 10:58:16.000000000 +0100
+++ gnome-power-manager-2.14.0/src/gpm-tray-icon.c	2006-04-17 14:57:21.000000000 +0200
@@ -530,7 +530,6 @@ gpm_tray_icon_show (GpmTrayIcon *icon,
 		icon->priv->is_visible = TRUE;
 	} else {
 		gtk_widget_hide_all (GTK_WIDGET (icon));
-		gtk_widget_unrealize (GTK_WIDGET (icon));
 		icon->priv->is_visible = FALSE;
 	}
 }
--- gnome-power-manager-2.14.0-orig/src/gpm-manager.c	2006-03-13 20:00:04.000000000 +0100
+++ gnome-power-manager-2.14.0/src/gpm-manager.c	2006-04-20 15:54:17.000000000 +0200
@@ -1788,6 +1788,14 @@ gpm_manager_tray_icon_show_info (GpmMana
 }
 
 static void
+tray_icon_destroyed (GtkObject *object, gpointer user_data)
+{
+	GpmManager *manager = user_data;
+
+	manager->priv->tray_icon = gpm_tray_icon_new ();
+}
+
+static void
 gpm_manager_init (GpmManager *manager)
 {
 	gboolean on_ac;
@@ -1843,6 +1851,8 @@ gpm_manager_init (GpmManager *manager)
 
 	gpm_debug ("creating new tray icon");
 	manager->priv->tray_icon = gpm_tray_icon_new ();
+	g_signal_connect (G_OBJECT (manager->priv->tray_icon), "destroy",
+			  G_CALLBACK (tray_icon_destroyed), manager);
 
 	gpm_debug ("initialising info infrastructure");
 	manager->priv->info = gpm_info_new ();
openSUSE Build Service is sponsored by