diff --git a/core/src/main/java/hu/bbara/purefin/core/player/manager/ProgressManager.kt b/core/src/main/java/hu/bbara/purefin/core/player/manager/ProgressManager.kt index 246ee710..a367af4d 100644 --- a/core/src/main/java/hu/bbara/purefin/core/player/manager/ProgressManager.kt +++ b/core/src/main/java/hu/bbara/purefin/core/player/manager/ProgressManager.kt @@ -43,8 +43,6 @@ class ProgressManager @Inject constructor( combine(playbackState, progress, metadata) { state, prog, meta -> Triple(state, prog, meta) }.collect { (state, prog, meta) -> - lastPositionMs = prog.positionMs - lastDurationMs = prog.durationMs isPaused = !state.isPlaying val mediaId = meta.mediaId?.let { runCatching { UUID.fromString(it) }.getOrNull() } val nextPlaybackReportContext = meta.playbackReportContext @@ -53,6 +51,9 @@ class ProgressManager @Inject constructor( stopSession() } + lastPositionMs = prog.positionMs + lastDurationMs = prog.durationMs + if (activeItemId == null && mediaId != null && !state.isEnded) { startSession(mediaId, prog.positionMs, nextPlaybackReportContext) } else if (activeItemId == mediaId) {