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">
+
+