fix(provider): make source optional

This commit is contained in:
2026-07-21 19:50:30 +02:00
parent a335509b4e
commit 6eb02d32cb
17 changed files with 57 additions and 36 deletions
@@ -177,7 +177,14 @@ class OmniPlayer : HybridOmniPlayerSpec() {
}
}
override fun setSource(src: Source) {
override fun setSource(src: Source?) {
if (src == null) {
runOnMainThreadSync {
player.setMediaItem(MediaItem.EMPTY)
player.prepare()
}
return
}
val handleAudioFocus = (src.mixAudio ?: MixAudioMode.AUTO) != MixAudioMode.MIXWITHOTHERS
val audioAttributes = AudioAttributes.Builder()
.setUsage(C.USAGE_MEDIA)
@@ -7,7 +7,7 @@ import com.margelo.nitro.omni.HybridOmniPlayerSpec
import com.margelo.nitro.omni.Source
class OmniPlayerFactory(val context: ThemedReactContext) : HybridOmniPlayerFactorySpec() {
override fun createPlayer(props: Source): HybridOmniPlayerSpec {
override fun createPlayer(props: Source?): HybridOmniPlayerSpec {
return OmniPlayer().apply {
setSource(props)
}