vlc/vlc-1.1 | branch: master | Ron Frederick <[email protected]> | Sat Jul 9 14:02:05 2011 -0700| [00947ef061c6750c7210356744958e32af30cd0e] | committer: Felix Paul Kühne
MacOS GUI: Tie display fade to "Black out" preference Change the MacOS GUI to trigger the fade of all the displays to black when entering & leaving full screen mode only if the "Black out other displays" preference is set. Signed-off-by: Felix Paul Kühne <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc/vlc-1.1.git/?a=commit;h=00947ef061c6750c7210356744958e32af30cd0e --- modules/gui/macosx/embeddedwindow.m | 30 ++++++++++++++++++++++-------- 1 files changed, 22 insertions(+), 8 deletions(-) diff --git a/modules/gui/macosx/embeddedwindow.m b/modules/gui/macosx/embeddedwindow.m index 9db6c22..01d74c7 100644 --- a/modules/gui/macosx/embeddedwindow.m +++ b/modules/gui/macosx/embeddedwindow.m @@ -479,8 +479,11 @@ * simply fade the display */ CGDisplayFadeReservationToken token; - CGAcquireDisplayFadeReservation(kCGMaxDisplayReservationInterval, &token); - CGDisplayFade( token, 0.5, kCGDisplayBlendNormal, kCGDisplayBlendSolidColor, 0, 0, 0, YES ); + if( blackout_other_displays ) + { + CGAcquireDisplayFadeReservation( kCGMaxDisplayReservationInterval, &token ); + CGDisplayFade( token, 0.5, kCGDisplayBlendNormal, kCGDisplayBlendSolidColor, 0, 0, 0, YES ); + } if ([screen isMainScreen]) SetSystemUIMode( kUIModeAllHidden, kUIOptionAutoShowMenuBar); @@ -494,8 +497,11 @@ [o_fullscreen_window setFrame:screen_rect display:YES]; - CGDisplayFade( token, 0.3, kCGDisplayBlendSolidColor, kCGDisplayBlendNormal, 0, 0, 0, NO ); - CGReleaseDisplayFadeReservation( token); + if( blackout_other_displays ) + { + CGDisplayFade( token, 0.3, kCGDisplayBlendSolidColor, kCGDisplayBlendNormal, 0, 0, 0, NO ); + CGReleaseDisplayFadeReservation( token ); + } /* Will release the lock */ [self hasBecomeFullscreen]; @@ -597,6 +603,7 @@ { NSMutableDictionary *dict1, *dict2; NSRect frame; + BOOL blackout_other_displays = config_GetInt( VLCIntf, "macosx-black" ); [self lockFullscreenAnimation]; @@ -619,8 +626,11 @@ * simply fade the display */ CGDisplayFadeReservationToken token; - CGAcquireDisplayFadeReservation(kCGMaxDisplayReservationInterval, &token); - CGDisplayFade( token, 0.3, kCGDisplayBlendNormal, kCGDisplayBlendSolidColor, 0, 0, 0, YES ); + if( blackout_other_displays ) + { + CGAcquireDisplayFadeReservation( kCGMaxDisplayReservationInterval, &token ); + CGDisplayFade( token, 0.3, kCGDisplayBlendNormal, kCGDisplayBlendSolidColor, 0, 0, 0, YES ); + } [[[[VLCMain sharedInstance] controls] fspanel] setNonActive: nil]; SetSystemUIMode( kUIModeNormal, kUIOptionAutoShowMenuBar); @@ -632,8 +642,12 @@ * here */ b_window_is_invisible = YES; - CGDisplayFade( token, 0.5, kCGDisplayBlendSolidColor, kCGDisplayBlendNormal, 0, 0, 0, NO ); - CGReleaseDisplayFadeReservation( token); + if( blackout_other_displays ) + { + CGDisplayFade( token, 0.5, kCGDisplayBlendSolidColor, kCGDisplayBlendNormal, 0, 0, 0, NO ); + CGReleaseDisplayFadeReservation( token ); + } + return; } _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
