[vlc-devel] commit: Make sure the window is set to a normal level before going to fullscreen. ( Felix Paul Kühne )

git version control git at videolan.org
Mon May 12 18:39:32 CEST 2008


vlc | branch: master | Felix Paul Kühne <fkuehne at videolan.org> | Mon May 12 18:39:56 2008 +0200| [f5f7c36c4351a71129e4d2f6e6a1d03823387713]

Make sure the window is set to a normal level before going to fullscreen.

This fixes the 'the fspanel is missing if I have always-on-top selected' bug and should also fix #1227 for OS X.

This patch needs testing on a multiscreen setup before being backported.

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=f5f7c36c4351a71129e4d2f6e6a1d03823387713
---

 modules/gui/macosx/vout.m |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/modules/gui/macosx/vout.m b/modules/gui/macosx/vout.m
index de4bd86..e6465b5 100644
--- a/modules/gui/macosx/vout.m
+++ b/modules/gui/macosx/vout.m
@@ -770,12 +770,22 @@ int DeviceCallback( vlc_object_t *p_this, const char *psz_variable,
 
 - (void)enterFullscreen
 {
+    if( var_GetBool( p_real_vout, "video-on-top" ) )
+    {
+        [o_window setLevel: NSNormalWindowLevel];
+    }
+
     [[o_view class] performSelectorOnMainThread:@selector(resetVout:) withObject:[NSValue valueWithPointer:p_vout] waitUntilDone:YES];
     [[[[VLCMain sharedInstance] getControls] getFSPanel] setActive: nil];
 }
 
 - (void)leaveFullscreen
 {
+    if( var_GetBool( p_real_vout, "video-on-top" ) )
+    {
+        [o_window setLevel: NSStatusWindowLevel];
+    }
+
     [[o_view class] performSelectorOnMainThread:@selector(resetVout:) withObject:[NSValue valueWithPointer:p_vout] waitUntilDone:YES];
     [[[[VLCMain sharedInstance] getControls] getFSPanel] setNonActive: nil];
 }




More information about the vlc-devel mailing list