浏览代码

Make books resumable and have duration of 1 second

Daniyar Itegulov 5 年之前
父节点
当前提交
613748b45d
共有 2 个文件被更改,包括 10 次插入1 次删除
  1. 1 1
      Emby.Server.Implementations/Library/UserDataManager.cs
  2. 9 0
      MediaBrowser.Controller/Entities/Book.cs

+ 1 - 1
Emby.Server.Implementations/Library/UserDataManager.cs

@@ -240,7 +240,7 @@ namespace Emby.Server.Implementations.Library
                 {
                     // Enforce MinResumeDuration
                     var durationSeconds = TimeSpan.FromTicks(runtimeTicks).TotalSeconds;
-                    if (durationSeconds < _config.Configuration.MinResumeDurationSeconds)
+                    if (durationSeconds < _config.Configuration.MinResumeDurationSeconds && !(item is Book))
                     {
                         positionTicks = 0;
                         data.Played = playedToCompletion = true;

+ 9 - 0
MediaBrowser.Controller/Entities/Book.cs

@@ -11,6 +11,10 @@ namespace MediaBrowser.Controller.Entities
         [JsonIgnore]
         public override string MediaType => Model.Entities.MediaType.Book;
 
+        public override bool SupportsPlayedStatus => true;
+
+        public override bool SupportsPositionTicksResume => true;
+
         [JsonIgnore]
         public string SeriesPresentationUniqueKey { get; set; }
 
@@ -20,6 +24,11 @@ namespace MediaBrowser.Controller.Entities
         [JsonIgnore]
         public Guid SeriesId { get; set; }
 
+        public Book()
+        {
+            this.RunTimeTicks = TimeSpan.TicksPerSecond;
+        }
+
         public string FindSeriesSortName()
         {
             return SeriesName;