diff --git a/application/vlc-android/src/org/videolan/vlc/media/PlaylistManager.kt b/application/vlc-android/src/org/videolan/vlc/media/PlaylistManager.kt index 952a90aa0..44f9c3105 100644 --- a/application/vlc-android/src/org/videolan/vlc/media/PlaylistManager.kt +++ b/application/vlc-android/src/org/videolan/vlc/media/PlaylistManager.kt @@ -1185,8 +1185,11 @@ class PlaylistManager(val service: PlaybackService) : MediaWrapperList.EventList } MediaPlayer.Event.TimeChanged -> { abRepeat.value?.let { + val fastSeek = settings.getBoolean("always_fast_seek", false) if (it.stop != -1L && player.getCurrentTime() > it.stop) service.setTime(it.start, false) - if (player.getCurrentTime() < it.start) service.setTime(it.start, false) + if ((fastSeek && player.getCurrentTime() < it.start - 30000L) + || (!fastSeek && player.getCurrentTime() < it.start)) + service.setTime(it.start, false) } if (player.getCurrentTime() % 10 == 0L) savePosition() val now = System.currentTimeMillis()