Bläddra i källkod

macosx/framework: Delay sleeping during playback.

Pierre d'Herbemont 16 år sedan
förälder
incheckning
da47b54b30
1 ändrade filer med 12 tillägg och 0 borttagningar
  1. 12 0
      Sources/VLCMediaPlayer.m

+ 12 - 0
Sources/VLCMediaPlayer.m

@@ -32,6 +32,9 @@
 # include "config.h"
 #endif
 
+/* prevent system sleep */
+#import <CoreServices/CoreServices.h>
+
 #include <vlc/vlc.h>
 
 /* Notification Messages */
@@ -651,8 +654,16 @@ static const VLCMediaPlayerState libvlc_to_local_state[] =
     [self didChangeValueForKey:@"time"];
 }
 
+- (void)delaySleep
+{
+    UpdateSystemActivity(UsrActivity);
+}
+
 - (void)mediaPlayerPositionChanged:(NSNumber *)newPosition
 {
+    // This seems to be the most relevant place to delay sleeping and screen saver.
+    [self delaySleep];
+
     [self willChangeValueForKey:@"position"];
     position = [newPosition floatValue];
     [self didChangeValueForKey:@"position"];
@@ -664,4 +675,5 @@ static const VLCMediaPlayerState libvlc_to_local_state[] =
     cachedState = [newState intValue];
     [self didChangeValueForKey:@"state"];
 }
+
 @end