vlc | branch: master | Ron Frederick <[email protected]> | Sat Jul  9 14:02:05 
2011 -0700| [036fe1e197650ae7571e914a5ec01ab7826fd743] | 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.git/?a=commit;h=036fe1e197650ae7571e914a5ec01ab7826fd743
---

 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 e2a87c5..d449f76 100644
--- a/modules/gui/macosx/embeddedwindow.m
+++ b/modules/gui/macosx/embeddedwindow.m
@@ -481,8 +481,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);
@@ -496,8 +499,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];
@@ -599,6 +605,7 @@
 {
     NSMutableDictionary *dict1, *dict2;
     NSRect frame;
+    BOOL blackout_other_displays = config_GetInt( VLCIntf, "macosx-black" );
 
     [self lockFullscreenAnimation];
 
@@ -621,8 +628,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);
@@ -634,8 +644,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

Reply via email to