diff options
author | Julien MOUTTE <julien@moutte.net> | 2004-10-08 20:15:48 +0000 |
---|---|---|
committer | Julien MOUTTE <dolphy@src.gnome.org> | 2004-10-08 20:15:48 +0000 |
commit | 08a7a719e6bb4dac3858e74d02f7223f6dcc967e (patch) | |
tree | 1b6f05de91677567bdd719bbba040e5b473501d6 | |
parent | 1a107c5f613374f812fde8147082e18905ce0f9e (diff) | |
download | totem-08a7a719e6bb4dac3858e74d02f7223f6dcc967e.tar.gz |
Drawing a black background on each expose event is doing flickering video.
2004-10-08 Julien MOUTTE <julien@moutte.net>
* src/bacon-video-widget-gst.c: (bacon_video_widget_expose_event):
Drawing a black background on each expose event is doing flickering
video. Moreover it can hide the video away in some cases.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | src/backend/bacon-video-widget-gst.c | 11 | ||||
-rw-r--r-- | src/bacon-video-widget-gst.c | 11 |
3 files changed, 18 insertions, 10 deletions
@@ -1,3 +1,9 @@ +2004-10-08 Julien MOUTTE <julien@moutte.net> + + * src/bacon-video-widget-gst.c: (bacon_video_widget_expose_event): + Drawing a black background on each expose event is doing flickering + video. Moreover it can hide the video away in some cases. + 2004-10-08 Ronald S. Bultje <rbultje@ronald.bitfreak.net> * src/Makefile.am: diff --git a/src/backend/bacon-video-widget-gst.c b/src/backend/bacon-video-widget-gst.c index f35a4d059..396455622 100644 --- a/src/backend/bacon-video-widget-gst.c +++ b/src/backend/bacon-video-widget-gst.c @@ -273,11 +273,6 @@ bacon_video_widget_expose_event (GtkWidget *widget, GdkEventExpose *event) gdk_draw_rectangle (widget->window, widget->style->black_gc, TRUE, 0, 0, widget->allocation.width, widget->allocation.height); - gdk_draw_rectangle (bvw->priv->video_window, widget->style->black_gc, TRUE, - bvw->priv->video_window_allocation.x, - bvw->priv->video_window_allocation.y, - bvw->priv->video_window_allocation.width, - bvw->priv->video_window_allocation.height); gst_x_overlay_set_xwindow_id (bvw->priv->xoverlay, window); if (GST_STATE (bvw->priv->play) >= GST_STATE_PAUSED) { @@ -313,6 +308,12 @@ bacon_video_widget_expose_event (GtkWidget *widget, GdkEventExpose *event) gdk_pixbuf_unref (logo); } + else { + gdk_draw_rectangle (bvw->priv->video_window, widget->style->black_gc, TRUE, + 0, 0, + bvw->priv->video_window_allocation.width, + bvw->priv->video_window_allocation.height); + } return TRUE; } diff --git a/src/bacon-video-widget-gst.c b/src/bacon-video-widget-gst.c index f35a4d059..396455622 100644 --- a/src/bacon-video-widget-gst.c +++ b/src/bacon-video-widget-gst.c @@ -273,11 +273,6 @@ bacon_video_widget_expose_event (GtkWidget *widget, GdkEventExpose *event) gdk_draw_rectangle (widget->window, widget->style->black_gc, TRUE, 0, 0, widget->allocation.width, widget->allocation.height); - gdk_draw_rectangle (bvw->priv->video_window, widget->style->black_gc, TRUE, - bvw->priv->video_window_allocation.x, - bvw->priv->video_window_allocation.y, - bvw->priv->video_window_allocation.width, - bvw->priv->video_window_allocation.height); gst_x_overlay_set_xwindow_id (bvw->priv->xoverlay, window); if (GST_STATE (bvw->priv->play) >= GST_STATE_PAUSED) { @@ -313,6 +308,12 @@ bacon_video_widget_expose_event (GtkWidget *widget, GdkEventExpose *event) gdk_pixbuf_unref (logo); } + else { + gdk_draw_rectangle (bvw->priv->video_window, widget->style->black_gc, TRUE, + 0, 0, + bvw->priv->video_window_allocation.width, + bvw->priv->video_window_allocation.height); + } return TRUE; } |