Explorar o código

Add PlaybackOrder to Session state

Damian Kacperski hai 1 ano
pai
achega
59a9586dbd

+ 1 - 0
Emby.Server.Implementations/Session/SessionManager.cs

@@ -394,6 +394,7 @@ namespace Emby.Server.Implementations.Session
             session.PlayState.SubtitleStreamIndex = info.SubtitleStreamIndex;
             session.PlayState.PlayMethod = info.PlayMethod;
             session.PlayState.RepeatMode = info.RepeatMode;
+            session.PlayState.PlaybackOrder = info.PlaybackOrder;
             session.PlaylistItemId = info.PlaylistItemId;
 
             var nowPlayingQueue = info.NowPlayingQueue;

+ 2 - 1
MediaBrowser.Model/Session/GeneralCommandType.cs

@@ -48,6 +48,7 @@ namespace MediaBrowser.Model.Session
         PlayNext = 38,
         ToggleOsdMenu = 39,
         Play = 40,
-        SetMaxStreamingBitrate = 41
+        SetMaxStreamingBitrate = 41,
+        SetPlaybackOrder = 42
     }
 }

+ 18 - 0
MediaBrowser.Model/Session/PlaybackOrder.cs

@@ -0,0 +1,18 @@
+namespace MediaBrowser.Model.Session
+{
+    /// <summary>
+    /// Enum PlaybackOrder.
+    /// </summary>
+    public enum PlaybackOrder
+    {
+        /// <summary>
+        /// Sorted playlist.
+        /// </summary>
+        Default = 0,
+
+        /// <summary>
+        /// Shuffled playlist.
+        /// </summary>
+        Shuffle = 1
+    }
+}

+ 6 - 0
MediaBrowser.Model/Session/PlaybackProgressInfo.cs

@@ -107,6 +107,12 @@ namespace MediaBrowser.Model.Session
         /// <value>The repeat mode.</value>
         public RepeatMode RepeatMode { get; set; }
 
+        /// <summary>
+        /// Gets or sets the playback order.
+        /// </summary>
+        /// <value>The playback order.</value>
+        public PlaybackOrder PlaybackOrder { get; set; }
+
         public QueueItem[] NowPlayingQueue { get; set; }
 
         public string PlaylistItemId { get; set; }

+ 6 - 0
MediaBrowser.Model/Session/PlayerStateInfo.cs

@@ -65,6 +65,12 @@ namespace MediaBrowser.Model.Session
         /// <value>The repeat mode.</value>
         public RepeatMode RepeatMode { get; set; }
 
+        /// <summary>
+        /// Gets or sets the playback order.
+        /// </summary>
+        /// <value>The playback order.</value>
+        public PlaybackOrder PlaybackOrder { get; set; }
+
         /// <summary>
         /// Gets or sets the now playing live stream identifier.
         /// </summary>