[banshee/gapless-ng: 8/836] [Banshee.PlaybackControllerService] Use player_engine.SetNextTrack when userRequested is false



commit cbda6dab2234aeb760ac4b5dcb4cfa96464e84d6
Author: Christopher James Halse Rogers <raof ubuntu com>
Date:   Fri Jul 17 15:38:26 2009 +1000

    [Banshee.PlaybackControllerService] Use player_engine.SetNextTrack when userRequested is false

 .../PlaybackControllerService.cs                   |   21 ++++++++++++++-----
 1 files changed, 15 insertions(+), 6 deletions(-)
---
diff --git a/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs b/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
index e06a232..68fd047 100644
--- a/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
+++ b/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
@@ -192,7 +192,7 @@ namespace Banshee.PlaybackController
                     QueuePlayTrack ();
                 } else {
                     last_was_skipped = false;
-                    Next ();
+                    Next (RepeatMode == PlaybackRepeatMode.RepeatSingle, false);
                 }
             } else {
                 OnStopped ();
@@ -221,11 +221,16 @@ namespace Banshee.PlaybackController
         
         public void Next ()
         {
-            Next (RepeatMode == PlaybackRepeatMode.RepeatAll);
+            Next (RepeatMode == PlaybackRepeatMode.RepeatAll, true);
         }
-        
+
         public void Next (bool restart)
         {
+            Next (restart, true);
+        }
+        
+        public void Next (bool restart, bool userRequested)
+        {
             CancelErrorTransition ();
             
             Source = NextSource;
@@ -233,9 +238,9 @@ namespace Banshee.PlaybackController
 
             player_engine.IncrementLastPlayed ();
             
-            if (Source is IBasicPlaybackController && ((IBasicPlaybackController)Source).Next (restart, true)) {
+            if (Source is IBasicPlaybackController && ((IBasicPlaybackController)Source).Next (restart, userRequested)) {
             } else {
-                ((IBasicPlaybackController)this).Next (restart, true);
+                ((IBasicPlaybackController)this).Next (restart, userRequested);
             }
             
             OnTransition ();
@@ -279,7 +284,11 @@ namespace Banshee.PlaybackController
 
             CurrentTrack = CalcNextTrack (Direction.Next, restart);
             if (CurrentTrack != null) {
-                QueuePlayTrack ();
+                if (userRequested) {
+                    QueuePlayTrack ();
+                } else {
+                    player_engine.SetNextTrack (CurrentTrack);
+                }
             }
             return true;
         }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]