Commit 3d27df46 authored by Felix Paul Kühne's avatar Felix Paul Kühne

* forward-port [17497] with the addition of an 'embedded' check, because this...

* forward-port [17497] with the addition of an 'embedded' check, because this work-around triggers the fspanel to keep hidden all the time when using detached vouts. Ideas on this issue are welcomed ;)
parent 8c2241f9
...@@ -121,6 +121,7 @@ ...@@ -121,6 +121,7 @@
vout_thread_t * p_real_vout; vout_thread_t * p_real_vout;
vlc_bool_t b_init_ok; vlc_bool_t b_init_ok;
vlc_bool_t b_black; vlc_bool_t b_black;
vlc_bool_t b_embedded;
} }
- (id) initWithVout: (vout_thread_t *) p_vout view: (VLCVoutView *) view - (id) initWithVout: (vout_thread_t *) p_vout view: (VLCVoutView *) view
......
...@@ -246,6 +246,8 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable, ...@@ -246,6 +246,8 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable,
- (void)closeVout - (void)closeVout
{ {
[[[[VLCMain sharedInstance] getControls] getFSPanel] fadeOut];
[o_view removeFromSuperview]; [o_view removeFromSuperview];
o_view = nil; o_view = nil;
p_vout = NULL; p_vout = NULL;
...@@ -922,6 +924,7 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable, ...@@ -922,6 +924,7 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable,
p_real_vout = [VLCVoutView getRealVout: p_vout]; p_real_vout = [VLCVoutView getRealVout: p_vout];
i_device = var_GetInteger( p_real_vout->p_libvlc, "video-device" ); i_device = var_GetInteger( p_real_vout->p_libvlc, "video-device" );
b_black = var_GetBool( p_vout, "macosx-black" ); b_black = var_GetBool( p_vout, "macosx-black" );
b_embedded = var_GetBool( p_vout, "macosx-embedded" );
/* Find out on which screen to open the window */ /* Find out on which screen to open the window */
if( i_device <= 0 || i_device > (int)[o_screens count] ) if( i_device <= 0 || i_device > (int)[o_screens count] )
...@@ -1063,7 +1066,7 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable, ...@@ -1063,7 +1066,7 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable,
[o_view closeVout]; [o_view closeVout];
} }
- (void) closeWindow - (void)closeWindow
{ {
/* XXX waitUntilDone = NO to avoid a possible deadlock when hitting /* XXX waitUntilDone = NO to avoid a possible deadlock when hitting
Command-Q */ Command-Q */
...@@ -1072,7 +1075,7 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable, ...@@ -1072,7 +1075,7 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable,
withObject: NULL waitUntilDone: NO]; withObject: NULL waitUntilDone: NO];
} }
- (id) closeReal: (id) sender - (id)closeReal:(id)sender
{ {
if( b_black == VLC_TRUE ) if( b_black == VLC_TRUE )
{ {
...@@ -1084,6 +1087,10 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable, ...@@ -1084,6 +1087,10 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable,
} }
SetSystemUIMode( kUIModeNormal, 0); SetSystemUIMode( kUIModeNormal, 0);
[super close]; [super close];
/* this does only work in embedded mode */
if( b_embedded == VLC_TRUE )
[[[[VLCMain sharedInstance] getControls] getFSPanel] orderOut: self];
return NULL; return NULL;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment