Index: src/backend/bacon-video-widget-gst.c
===================================================================
RCS file: /cvs/gnome/totem/src/backend/bacon-video-widget-gst.c,v
retrieving revision 1.177
diff -u -r1.177 bacon-video-widget-gst.c
--- src/backend/bacon-video-widget-gst.c	17 Apr 2005 20:47:27 -0000	1.177
+++ src/backend/bacon-video-widget-gst.c	18 Apr 2005 11:35:07 -0000
@@ -275,7 +275,7 @@
   widget->window = gdk_window_new (gtk_widget_get_parent_window (widget),
 				   &attributes, attributes_mask);
   gdk_window_set_user_data (widget->window, widget);
-  gdk_window_show (widget->window);
+  //gdk_window_show (widget->window);
 
   /* Creating our video window */
   attributes.window_type = GDK_WINDOW_CHILD;
@@ -294,7 +294,7 @@
   bvw->priv->video_window = gdk_window_new (widget->window,
 				            &attributes, attributes_mask);
   gdk_window_set_user_data (bvw->priv->video_window, widget);
-  gdk_window_show (bvw->priv->video_window);
+  //gdk_window_show (bvw->priv->video_window);
 
   widget->style = gtk_style_attach (widget->style, widget->window);
 
@@ -326,6 +326,30 @@
     GTK_WIDGET_CLASS (parent_class)->unrealize (widget);
 }
 
+static void
+bacon_video_widget_show (GtkWidget *widget)
+{
+  BaconVideoWidget *bvw = BACON_VIDEO_WIDGET (widget);
+
+  gdk_window_show (widget->window);
+  gdk_window_show (bvw->priv->video_window);
+
+  if (GTK_WIDGET_CLASS (parent_class)->show)
+    GTK_WIDGET_CLASS (parent_class)->show (widget);
+}
+
+static void
+bacon_video_widget_hide (GtkWidget *widget)
+{
+  BaconVideoWidget *bvw = BACON_VIDEO_WIDGET (widget);
+
+  gdk_window_hide (widget->window);
+  gdk_window_hide (bvw->priv->video_window);
+
+  if (GTK_WIDGET_CLASS (parent_class)->hide)
+    GTK_WIDGET_CLASS (parent_class)->hide (widget);
+}
+
 static gboolean
 bacon_video_widget_expose_event (GtkWidget *widget, GdkEventExpose *event)
 {
@@ -569,6 +593,8 @@
   widget_class->size_allocate = bacon_video_widget_size_allocate;
   widget_class->realize = bacon_video_widget_realize;
   widget_class->unrealize = bacon_video_widget_unrealize;
+  widget_class->show = bacon_video_widget_show;
+  widget_class->hide = bacon_video_widget_hide;
   widget_class->expose_event = bacon_video_widget_expose_event;
   widget_class->motion_notify_event = bacon_video_widget_motion_notify;
   widget_class->button_press_event = bacon_video_widget_button_press;
