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 467c9564b..20fd982e7 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
@@ -315,16 +315,9 @@ class PlayerFragment : BaseFragment(), OnlinePlayerOptions {
BackgroundHelper.stopBackgroundPlay(requireContext())
}
- playerBinding.repeatBTN.setOnClickListener {
- // Restart video if finished
- exoPlayer.seekTo(0)
- exoPlayer.play()
- }
-
- binding.playImageView.setOnClickListener {
+ val playPauseClickListner = View.OnClickListener {
if (!exoPlayer.isPlaying) {
// start or go on playing
- binding.playImageView.setImageResource(R.drawable.ic_pause)
if (exoPlayer.playbackState == Player.STATE_ENDED) {
// restart video if finished
exoPlayer.seekTo(0)
@@ -332,10 +325,11 @@ class PlayerFragment : BaseFragment(), OnlinePlayerOptions {
exoPlayer.play()
} else {
// pause the video
- binding.playImageView.setImageResource(R.drawable.ic_play)
exoPlayer.pause()
}
}
+ playerBinding.playPauseBTN.setOnClickListener(playPauseClickListner)
+ binding.playImageView.setOnClickListener(playPauseClickListner)
// video description and chapters toggle
binding.playerTitleLayout.setOnClickListener {
@@ -977,18 +971,15 @@ class PlayerFragment : BaseFragment(), OnlinePlayerOptions {
if (exoPlayer.isPlaying) {
// video is playing
binding.playImageView.setImageResource(R.drawable.ic_pause)
- playerBinding.exoPlayPause.visibility = View.VISIBLE
- playerBinding.repeatBTN.visibility = View.GONE
+ playerBinding.playPauseBTN.setImageResource(R.drawable.ic_pause)
} else if (exoPlayer.playbackState == Player.STATE_ENDED) {
// video has finished
binding.playImageView.setImageResource(R.drawable.ic_restart)
- playerBinding.exoPlayPause.visibility = View.GONE
- playerBinding.repeatBTN.visibility = View.VISIBLE
+ playerBinding.playPauseBTN.setImageResource(R.drawable.ic_restart)
} else {
// player in any other state
binding.playImageView.setImageResource(R.drawable.ic_play)
- playerBinding.exoPlayPause.visibility = View.VISIBLE
- playerBinding.repeatBTN.visibility = View.GONE
+ playerBinding.playPauseBTN.setImageResource(R.drawable.ic_play)
}
}
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 4da4fe780..e6eefcd83 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
@@ -272,7 +272,7 @@ internal class CustomExoPlayerView(
binding.exoBottomBar.visibility = visibility
binding.closeImageButton.visibility = visibility
binding.exoTitle.visibility = visibility
- binding.exoPlayPause.visibility = visibility
+ binding.playPauseBTN.visibility = visibility
// disable tap and swipe gesture if the player is locked
playerGestureController.isEnabled = isLocked
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 9a14b0a1c..5710ef259 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
@@ -277,20 +277,12 @@
-
-