update tv ux, fix configuration-cache issues

This commit is contained in:
2026-07-21 14:38:02 +03:00
parent a264db284d
commit a062427d0d
11 changed files with 50 additions and 79 deletions
@@ -30,6 +30,7 @@ import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import org.jetbrains.compose.resources.getString
import org.koin.core.annotation.Factory
import kotlin.time.Duration.Companion.milliseconds
@Factory
class AndroidPlayerController(context: Context) : PlayerController {
@@ -114,9 +115,7 @@ class AndroidPlayerController(context: Context) : PlayerController {
)
}
}.flatten()
audioTracks.value = list
if (!isTrackInitialized && list.isNotEmpty()) {
isTrackInitialized = true
list.firstOrNull()?.let { selectAudioTrack(it.id) }
@@ -151,6 +150,7 @@ class AndroidPlayerController(context: Context) : PlayerController {
override suspend fun load(url: String, startPositionMs: Long): Unit =
withContext(Dispatchers.Main) {
isTrackInitialized = false
bindListenerIfNeeded(true)
val mediaItem = MediaItem.fromUri(url)
exoPlayer.setMediaItem(mediaItem)
@@ -199,7 +199,7 @@ class AndroidPlayerController(context: Context) : PlayerController {
progressJob = scope.launch {
while (isActive) {
updateState()
delay(200)
delay(200.milliseconds)
}
}
}