[pitivi] viewer: Do not forget to set ViewerWidget sink when setting our pipeline



commit 28464252f80645c4aa1b372a5b0ac3c49f0b319e
Author: Thibault Saunier <tsaunier gnome org>
Date:   Fri Oct 24 21:24:40 2014 +0200

    viewer: Do not forget to set ViewerWidget sink when setting our pipeline
    
    Making the expose call working when we need to redraw the viewer.
    
    + Rename Pipeline._glimage_sink to Pipeline.videosink and making it
      public and simpler to read.
    
    Conflicts:
        pitivi/mediafilespreviewer.py

 pitivi/mediafilespreviewer.py |    4 +++-
 pitivi/utils/pipeline.py      |    8 ++++----
 pitivi/viewer.py              |    4 +++-
 3 files changed, 10 insertions(+), 6 deletions(-)
---
diff --git a/pitivi/mediafilespreviewer.py b/pitivi/mediafilespreviewer.py
index fc55ea5..bdabff3 100644
--- a/pitivi/mediafilespreviewer.py
+++ b/pitivi/mediafilespreviewer.py
@@ -107,7 +107,9 @@ class PreviewWidget(Gtk.Grid, Loggable):
 
         # Gui elements:
         # Drawing area for video output
-        self.preview_video = ViewerWidget(realizedCb=self._on_preview_video_realize_cb)
+        self.preview_video = ViewerWidget(
+            realizedCb=self._on_preview_video_realize_cb)
+        self.preview_video.sink = self.player.video_sink
         self.preview_video.props.hexpand = minimal
         self.preview_video.props.vexpand = minimal
         self.attach(self.preview_video, 0, 0, 1, 1)
diff --git a/pitivi/utils/pipeline.py b/pitivi/utils/pipeline.py
index cf23296..9b57bfa 100644
--- a/pitivi/utils/pipeline.py
+++ b/pitivi/utils/pipeline.py
@@ -181,11 +181,11 @@ class SimplePipeline(GObject.Object, Loggable):
 
         # Create a cluttersink element used for display. Subclasses must connect
         # it to self._pipeline themselves
-        self._opengl_sink = Gst.ElementFactory.make("glimagesink", None)
+        self.video_sink = Gst.ElementFactory.make("glimagesink", None)
         if isinstance(pipeline, GES.Pipeline):
-            self._pipeline.preview_set_video_sink(self._opengl_sink)
+            self._pipeline.preview_set_video_sink(self.video_sink)
         else:
-            self._pipeline.set_property("video_sink", self._opengl_sink)
+            self._pipeline.set_property("video_sink", self.video_sink)
 
     def release(self):
         """
@@ -515,7 +515,7 @@ class AssetPipeline(SimplePipeline):
         else:
             handle = widget.drawing_area.get_window().get_xid()
 
-        self._opengl_sink.set_window_handle(handle)
+        self.video_sink.set_window_handle(handle)
 
 
 class Pipeline(GES.Pipeline, SimplePipeline):
diff --git a/pitivi/viewer.py b/pitivi/viewer.py
index 36435bf..1b4953e 100644
--- a/pitivi/viewer.py
+++ b/pitivi/viewer.py
@@ -137,7 +137,9 @@ class ViewerContainer(Gtk.VBox, Loggable):
         self.pipeline.connect("position", self._positionCb)
         self.pipeline.connect("duration-changed", self._durationChangedCb)
 
-        self.sink = pipeline._opengl_sink
+        self.sink = pipeline.video_sink
+        self.internal.sink = self.sink
+        self.external.sink = self.sink
 
         self._switch_output_window()
         self._setUiActive()


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]