summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--applets/notification_area/system-tray/na-tray-child.c43
1 files changed, 5 insertions, 38 deletions
diff --git a/applets/notification_area/system-tray/na-tray-child.c b/applets/notification_area/system-tray/na-tray-child.c
index 06540625..189a53b7 100644
--- a/applets/notification_area/system-tray/na-tray-child.c
+++ b/applets/notification_area/system-tray/na-tray-child.c
@@ -559,44 +559,11 @@ na_tray_child_force_redraw (NaTrayChild *child)
if (gtk_widget_get_mapped (widget))
{
-#if 1
- /* Sending an ExposeEvent might cause redraw problems if the
- * icon is expecting the server to clear-to-background before
- * the redraw. It should be ok for GtkStatusIcon or EggTrayIcon.
- */
- Display *xdisplay = GDK_DISPLAY_XDISPLAY (gtk_widget_get_display (widget));
- XEvent xev;
- GdkWindow *plug_window;
- GtkAllocation allocation;
-
- plug_window = gtk_socket_get_plug_window (GTK_SOCKET (child));
- gtk_widget_get_allocation (widget, &allocation);
-
- xev.xexpose.type = Expose;
- xev.xexpose.window = GDK_WINDOW_XID (plug_window);
- xev.xexpose.x = 0;
- xev.xexpose.y = 0;
- xev.xexpose.width = allocation.width;
- xev.xexpose.height = allocation.height;
- xev.xexpose.count = 0;
-
- gdk_error_trap_push ();
- XSendEvent (GDK_DISPLAY_XDISPLAY (gtk_widget_get_display (widget)),
- xev.xexpose.window,
- False, ExposureMask,
- &xev);
- /* We have to sync to reliably catch errors from the XSendEvent(),
- * since that is asynchronous.
- */
- XSync (xdisplay, False);
- gdk_error_trap_pop_ignored ();
-#else
- /* Hiding and showing is the safe way to do it, but can result in more
- * flickering.
- */
- gdk_window_hide (widget->window);
- gdk_window_show (widget->window);
-#endif
+ /* Hiding and showing is the safe way to do it, but can result in more
+ * flickering.
+ */
+ gtk_widget_hide(widget);
+ gtk_widget_show_all(widget);
}
}