in app/src/main/java/com/amazon/ivs/optimizations/ui/precaching/PreCachingFragment.kt [38:74]
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
setBackButtonAvailable()
preferences.capturedClickTime = Date().time
binding.streamContainer.addView(viewModel.playerView, 0)
val params = viewModel.playerView?.layoutParams as ConstraintLayout.LayoutParams
params.bottomToBottom = binding.playerGuideline.id
params.endToEnd = binding.streamContainer.id
params.startToStart = binding.streamContainer.id
params.topToTop = binding.playerGuideline.id
viewModel.playerView?.layoutParams = params
launchUI {
viewModel.onInfoUpdate.collect { infoUpdate ->
binding.infoUpdate = infoUpdate
}
}
launchUI {
viewModel.onBuffering.collect { bufferingState ->
binding.surfaceBuffering = bufferingState
}
}
launchUI {
viewModel.onError.collect { error ->
binding.root.showSnackBar(error.errorMessage)
}
}
launchUI {
viewModel.onSizeChanged.collect { videoSizeState ->
viewModel.playerView?.surfaceView?.scaleToFit(videoSizeState, binding.streamContainer)
}
}
}