override fun onViewCreated()

in app/src/main/java/com/amazon/ivs/multiple/players/ui/secondlayout/SecondLayoutFragment.kt [38:96]


    override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
        super.onViewCreated(view, savedInstanceState)

        launchUI {
            viewModel.onBuffering.collect { bufferingStates ->
                bufferingStates.forEach { state ->
                    when (state.playerId) {
                        SecondLayoutStream.STREAM_A.index -> {
                            binding.surfaceBufferingA = state.buffering
                        }
                        SecondLayoutStream.STREAM_B.index -> {
                            binding.surfaceBufferingB = state.buffering
                        }
                    }
                }
            }
        }

        launchUI {
            viewModel.onError.collect { error ->
                binding.root.showSnackBar(error.errorMessage)
            }
        }

        launchUI {
            viewModel.onSizeChanged.collect { playerIndex ->
                videoSurfaces[playerIndex].onReady(playerIndex) { playerView ->
                    Timber.d("Player size changed: $playerView")
                    viewModel.updatePlayerView(playerView)
                }
            }
        }

        launchUI {
            viewModel.onPlaying.collect { playing ->
                binding.controls.isPLaying = playing
            }
        }

        binding.controls.play.setOnClickListener {
            if (viewModel.isPlaying) {
                viewModel.pause()
            } else {
                viewModel.play()
            }
        }

        binding.controls.switchStream.setOnClickListener {
            videoSurfaces.forEach { playerView ->
                playerView.animate().alpha(0f).setDuration(SURFACE_FADE_OUT_DELAY).start()
            }
            launchMain {
                delay(SURFACE_FADE_OUT_DELAY)
                activity?.openFragment(R.id.navigation_fragment_third)
            }
        }

        updateOnRotation()
    }