From 16bb6b4c6b349ff2edacfe770294d564edfae5e7 Mon Sep 17 00:00:00 2001 From: Antoine Jaury Date: Fri, 3 Jul 2026 11:13:29 +0200 Subject: [PATCH] fix: handle buffering state in playback state management as playing --- .../fr/ajaury/gwenedeg/player/data/AndroidAudioPlayer.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/audioplayer/src/androidMain/kotlin/fr/ajaury/gwenedeg/player/data/AndroidAudioPlayer.kt b/core/audioplayer/src/androidMain/kotlin/fr/ajaury/gwenedeg/player/data/AndroidAudioPlayer.kt index d172692..e4bba84 100644 --- a/core/audioplayer/src/androidMain/kotlin/fr/ajaury/gwenedeg/player/data/AndroidAudioPlayer.kt +++ b/core/audioplayer/src/androidMain/kotlin/fr/ajaury/gwenedeg/player/data/AndroidAudioPlayer.kt @@ -24,15 +24,19 @@ internal class AndroidAudioPlayer( init { player.addListener( object : Player.Listener { + var isBuffering = false + override fun onPlaybackStateChanged(playbackState: Int) { if (playbackState == Player.STATE_ENDED) { _playbackState.value = PlaybackState.ENDED } + + isBuffering = playbackState == Player.STATE_BUFFERING } override fun onIsPlayingChanged(isPlaying: Boolean) { _playbackState.value = when { - isPlaying -> PlaybackState.PLAYING + isPlaying || isBuffering -> PlaybackState.PLAYING player.playbackState == Player.STATE_ENDED -> PlaybackState.ENDED else -> PlaybackState.PAUSED }