diff options
Diffstat (limited to 'sys/osxvideo/osxvideosink.m')
-rw-r--r-- | sys/osxvideo/osxvideosink.m | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/osxvideo/osxvideosink.m b/sys/osxvideo/osxvideosink.m index 2e239e8d6..4419d37b8 100644 --- a/sys/osxvideo/osxvideosink.m +++ b/sys/osxvideo/osxvideosink.m @@ -700,6 +700,10 @@ gst_osx_video_sink_set_window_handle (GstXOverlay * overlay, guintptr handle_id) osxvideosink->osxwindow->gstview, @selector(addToSuperview:), osxvideosink->superview, YES); } + + if (window_id) { + osxvideosink->osxwindow->internal = FALSE; + } } static void @@ -863,7 +867,12 @@ gst_osx_video_sink_get_type (void) GST_INFO_OBJECT (osxvideosink, "resizing"); NSSize size = {osxwindow->width, osxwindow->height}; - [osxwindow->win setContentSize:size]; + if (osxwindow->internal) { + [osxwindow->win setContentSize:size]; + } + if (osxwindow->gstview) { + [osxwindow->gstview setVideoSize :(int)osxwindow->width :(int)osxwindow->height]; + } GST_INFO_OBJECT (osxvideosink, "done"); [pool release]; |