diff --git a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt index 6a15b6e89..3edf90d44 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt @@ -107,15 +107,15 @@ import com.google.android.exoplayer2.ui.StyledPlayerView import com.google.android.exoplayer2.upstream.DefaultDataSource import com.google.android.exoplayer2.util.MimeTypes import com.google.android.material.dialog.MaterialAlertDialogBuilder -import java.io.IOException -import java.util.* -import java.util.concurrent.Executors -import kotlin.math.abs import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import org.chromium.net.CronetEngine import retrofit2.HttpException +import java.io.IOException +import java.util.* +import java.util.concurrent.Executors +import kotlin.math.abs class PlayerFragment : BaseFragment(), OnlinePlayerOptions { @@ -314,6 +314,7 @@ class PlayerFragment : BaseFragment(), OnlinePlayerOptions { .commit() BackgroundHelper.stopBackgroundPlay(requireContext()) } + playerBinding.autoPlay.visibility = View.VISIBLE binding.playImageView.setOnClickListener { if (!exoPlayer.isPlaying) { @@ -1162,8 +1163,8 @@ class PlayerFragment : BaseFragment(), OnlinePlayerOptions { for (vid in videoStreams) { if (resolutions.any { - it.resolution == vid.quality.qualityToInt() - } || vid.url == null + it.resolution == vid.quality.qualityToInt() + } || vid.url == null ) { continue } diff --git a/app/src/main/java/com/github/libretube/ui/interfaces/PlayerOptions.kt b/app/src/main/java/com/github/libretube/ui/interfaces/PlayerOptions.kt index 6b60b4785..a0cc23a38 100644 --- a/app/src/main/java/com/github/libretube/ui/interfaces/PlayerOptions.kt +++ b/app/src/main/java/com/github/libretube/ui/interfaces/PlayerOptions.kt @@ -1,7 +1,6 @@ package com.github.libretube.ui.interfaces interface PlayerOptions { - fun onAutoplayClicked() fun onPlaybackSpeedClicked() diff --git a/app/src/main/java/com/github/libretube/ui/views/CustomExoPlayerView.kt b/app/src/main/java/com/github/libretube/ui/views/CustomExoPlayerView.kt index 0331bc630..2770997f1 100644 --- a/app/src/main/java/com/github/libretube/ui/views/CustomExoPlayerView.kt +++ b/app/src/main/java/com/github/libretube/ui/views/CustomExoPlayerView.kt @@ -127,6 +127,12 @@ internal class CustomExoPlayerView( isPlayerLocked = !isPlayerLocked } + binding.autoPlay.isChecked = autoplayEnabled + + binding.autoPlay.setOnCheckedChangeListener { _, isChecked -> + autoplayEnabled = isChecked + } + resizeMode = when (resizeModePref) { "fill" -> AspectRatioFrameLayout.RESIZE_MODE_FILL "zoom" -> AspectRatioFrameLayout.RESIZE_MODE_ZOOM @@ -213,19 +219,6 @@ internal class CustomExoPlayerView( private fun initializeAdvancedOptions(context: Context) { binding.toggleOptions.setOnClickListener { val items = mutableListOf( - BottomSheetItem( - context.getString(R.string.player_autoplay), - R.drawable.ic_play, - { - if (autoplayEnabled) { - context.getString(R.string.enabled) - } else { - context.getString(R.string.disabled) - } - } - ) { - onAutoplayClicked() - }, BottomSheetItem( context.getString(R.string.repeat_mode), R.drawable.ic_repeat, @@ -446,23 +439,6 @@ internal class CustomExoPlayerView( gestureViewBinding.volumeTextView.text = "${bar.progress.normalize(0, bar.max, 0, 100)}" } - override fun onAutoplayClicked() { - // autoplay options dialog - BaseBottomSheet() - .setSimpleItems( - listOf( - context.getString(R.string.enabled), - context.getString(R.string.disabled) - ) - ) { index -> - when (index) { - 0 -> autoplayEnabled = true - 1 -> autoplayEnabled = false - } - } - .show(supportFragmentManager) - } - override fun onPlaybackSpeedClicked() { player?.let { PlaybackSpeedSheet(it).show(supportFragmentManager) } } diff --git a/app/src/main/res/layout/exo_styled_player_control_view.xml b/app/src/main/res/layout/exo_styled_player_control_view.xml index 35281c044..ca1982210 100644 --- a/app/src/main/res/layout/exo_styled_player_control_view.xml +++ b/app/src/main/res/layout/exo_styled_player_control_view.xml @@ -67,6 +67,15 @@ android:layout_gravity="center" android:layoutDirection="ltr"> + +