From 26cb3cf749eb26b912631b887b0ea037ac43f180 Mon Sep 17 00:00:00 2001 From: Christian Schabesberger Date: Wed, 4 Sep 2024 11:08:05 +0200 Subject: [PATCH] only show loading cycle when not playing --- .../newplayer/model/VideoPlayerViewModelImpl.kt | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/new-player/src/main/java/net/newpipe/newplayer/model/VideoPlayerViewModelImpl.kt b/new-player/src/main/java/net/newpipe/newplayer/model/VideoPlayerViewModelImpl.kt index c7b5f87..7e8228e 100644 --- a/new-player/src/main/java/net/newpipe/newplayer/model/VideoPlayerViewModelImpl.kt +++ b/new-player/src/main/java/net/newpipe/newplayer/model/VideoPlayerViewModelImpl.kt @@ -142,7 +142,7 @@ class VideoPlayerViewModelImpl @Inject constructor( super.onIsPlayingChanged(isPlaying) Log.d(TAG, "Playing state changed. Is Playing: $isPlaying") mutableUiState.update { - it.copy(playing = isPlaying) + it.copy(playing = isPlaying, isLoading = false) } } @@ -155,8 +155,10 @@ class VideoPlayerViewModelImpl @Inject constructor( // TODO: This is not correctly applicable for loading indicator override fun onIsLoadingChanged(isLoading: Boolean) { super.onIsLoadingChanged(isLoading) - mutableUiState.update { - it.copy(isLoading = isLoading) + if(!player.isPlaying) { + mutableUiState.update { + it.copy(isLoading = isLoading) + } } } @@ -263,7 +265,7 @@ class VideoPlayerViewModelImpl @Inject constructor( private fun resetHideUiDelayedJob() { uiVisibilityJob?.cancel() uiVisibilityJob = viewModelScope.launch { - delay(4000) + delay(2000) hideUi() } }