From ebe7330c8a8c9e32e351d7af70c7c727d75c7da2 Mon Sep 17 00:00:00 2001 From: Bnyro Date: Sun, 10 Sep 2023 14:21:39 +0200 Subject: [PATCH] fix: hide autoplay countdown when miniplayer visible --- .../github/libretube/ui/views/AutoplayCountdownView.kt | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/github/libretube/ui/views/AutoplayCountdownView.kt b/app/src/main/java/com/github/libretube/ui/views/AutoplayCountdownView.kt index c0bd3ad2a..f85f45fad 100644 --- a/app/src/main/java/com/github/libretube/ui/views/AutoplayCountdownView.kt +++ b/app/src/main/java/com/github/libretube/ui/views/AutoplayCountdownView.kt @@ -8,14 +8,21 @@ import android.view.LayoutInflater import android.widget.FrameLayout import androidx.core.os.postDelayed import androidx.core.view.isVisible +import androidx.lifecycle.ViewModelProvider +import androidx.lifecycle.get import com.github.libretube.R import com.github.libretube.databinding.AutoplayCountdownBinding +import com.github.libretube.ui.activities.MainActivity +import com.github.libretube.ui.base.BaseActivity +import com.github.libretube.ui.models.PlayerViewModel class AutoplayCountdownView( context: Context, attributeSet: AttributeSet? ) : FrameLayout(context, attributeSet) { private val layoutInflater = LayoutInflater.from(context) + private val playerViewModel: PlayerViewModel get() = ViewModelProvider(context as MainActivity).get() + val binding = AutoplayCountdownBinding.inflate(layoutInflater, this, true) private var onCountdownEnd: () -> Unit = {} private var hideSelf: () -> Unit = {} @@ -34,7 +41,6 @@ class AutoplayCountdownView( } fun startCountdown(onEnd: () -> Unit) { - this.isVisible = true onCountdownEnd = { hideSelf.invoke() onEnd.invoke() @@ -53,6 +59,8 @@ class AutoplayCountdownView( return } + // only show countdown when mini player not visible + this.isVisible = playerViewModel.isMiniPlayerVisible.value == false binding.currentState.text = context.getString( R.string.playing_next, currentTimerState.toString()