in app/src/main/java/com/amazon/ivs/optimizations/ui/settings/SettingsFragment.kt [31:64]
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
binding.customStreamSwitch.isChecked = preferences.useCustomUrl
binding.playbackUrlContainer.setVisible(preferences.useCustomUrl)
binding.playbackUrlInput.text?.clear()
binding.playbackUrlInput.text?.append(preferences.customLiveStreamUrl ?: "")
binding.customStreamSwitch.setOnCheckedChangeListener { _, checked ->
binding.playbackUrlContainer.setVisible(checked)
preferences.useCustomUrl = checked
if (checked) {
binding.playbackUrlInput.requestFocus()
binding.playbackUrlInput.showKeyboard()
} else {
binding.playbackUrlInput.hideKeyboard()
}
}
binding.customStreamHolder.setOnClickListener {
binding.customStreamSwitch.isChecked = !binding.customStreamSwitch.isChecked
}
binding.playbackUrlInput.addTextChangedListener {
val urlInput = binding.playbackUrlInput.text.toString()
if (urlInput.isNotBlank() && !urlInput.contains(IVS_PLAYBACK_URL_BASE)) {
binding.playbackUrlContainer.isErrorEnabled = true
binding.playbackUrlContainer.error = getString(R.string.playback_url)
preferences.customLiveStreamUrl = null
} else {
binding.playbackUrlContainer.isErrorEnabled = false
preferences.customLiveStreamUrl = urlInput
}
}
}