aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamian Kacperski <7dami77@gmail.com>2024-02-09 20:41:32 +0100
committerDamian Kacperski <7dami77@gmail.com>2024-02-09 20:41:32 +0100
commit59a9586dbdbc6c7fc9f3ef841183f736fb07eb23 (patch)
treefa0f3ad6b31a1a2b040ef101121c6cb9eadfcc2f
parentfd116e76160e10585958049867f443a7879c42e2 (diff)
Add PlaybackOrder to Session state
-rw-r--r--Emby.Server.Implementations/Session/SessionManager.cs1
-rw-r--r--MediaBrowser.Model/Session/GeneralCommandType.cs3
-rw-r--r--MediaBrowser.Model/Session/PlaybackOrder.cs18
-rw-r--r--MediaBrowser.Model/Session/PlaybackProgressInfo.cs6
-rw-r--r--MediaBrowser.Model/Session/PlayerStateInfo.cs6
5 files changed, 33 insertions, 1 deletions
diff --git a/Emby.Server.Implementations/Session/SessionManager.cs b/Emby.Server.Implementations/Session/SessionManager.cs
index bbb3938dc..40b3b0339 100644
--- a/Emby.Server.Implementations/Session/SessionManager.cs
+++ b/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;
diff --git a/MediaBrowser.Model/Session/GeneralCommandType.cs b/MediaBrowser.Model/Session/GeneralCommandType.cs
index 166a6b441..09339928c 100644
--- a/MediaBrowser.Model/Session/GeneralCommandType.cs
+++ b/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
}
}
diff --git a/MediaBrowser.Model/Session/PlaybackOrder.cs b/MediaBrowser.Model/Session/PlaybackOrder.cs
new file mode 100644
index 000000000..8ef7faf14
--- /dev/null
+++ b/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
+ }
+}
diff --git a/MediaBrowser.Model/Session/PlaybackProgressInfo.cs b/MediaBrowser.Model/Session/PlaybackProgressInfo.cs
index a6e7efcb0..04a9d6867 100644
--- a/MediaBrowser.Model/Session/PlaybackProgressInfo.cs
+++ b/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; }
diff --git a/MediaBrowser.Model/Session/PlayerStateInfo.cs b/MediaBrowser.Model/Session/PlayerStateInfo.cs
index 80e6d4e0b..35cd68fd1 100644
--- a/MediaBrowser.Model/Session/PlayerStateInfo.cs
+++ b/MediaBrowser.Model/Session/PlayerStateInfo.cs
@@ -66,6 +66,12 @@ namespace MediaBrowser.Model.Session
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>
/// <value>The live stream identifier.</value>