mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
make different view for time remaining counter
This commit is contained in:
parent
f792ec757e
commit
d434b61662
4 changed files with 70 additions and 11 deletions
|
@ -32,6 +32,7 @@ import androidx.core.graphics.blue
|
|||
import androidx.core.graphics.green
|
||||
import androidx.core.graphics.red
|
||||
import androidx.core.view.isGone
|
||||
import androidx.core.view.isInvisible
|
||||
import androidx.core.view.isVisible
|
||||
import androidx.core.widget.doOnTextChanged
|
||||
import androidx.preference.PreferenceManager
|
||||
|
@ -80,7 +81,6 @@ open class FullScreenPlayer : AbstractPlayerFragment() {
|
|||
protected open var isTv = false
|
||||
protected var playerBinding: PlayerCustomLayoutBinding? = null
|
||||
private val handler = Handler(Looper.getMainLooper())
|
||||
private var isShowTimeRemaining = false
|
||||
|
||||
// state of player UI
|
||||
protected var isShowing = false
|
||||
|
@ -1424,11 +1424,11 @@ open class FullScreenPlayer : AbstractPlayerFragment() {
|
|||
}
|
||||
|
||||
exoDuration.setOnClickListener {
|
||||
if (!isShowTimeRemaining) {
|
||||
startUpdatingRemainingTime()
|
||||
} else {
|
||||
stopUpdatingRemainingTime()
|
||||
}
|
||||
startUpdatingRemainingTime()
|
||||
}
|
||||
|
||||
timeLeft.setOnClickListener {
|
||||
stopUpdatingRemainingTime()
|
||||
}
|
||||
|
||||
skipChapterButton.setOnClickListener {
|
||||
|
@ -1549,8 +1549,7 @@ open class FullScreenPlayer : AbstractPlayerFragment() {
|
|||
val remainingTimeSeconds = (duration - position) / 1000
|
||||
val formattedTime = "-${DateUtils.formatElapsedTime(remainingTimeSeconds)}"
|
||||
|
||||
playerBinding?.exoDuration?.text = formattedTime
|
||||
isShowTimeRemaining = true
|
||||
playerBinding?.timeLeft?.text = formattedTime
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1561,13 +1560,15 @@ open class FullScreenPlayer : AbstractPlayerFragment() {
|
|||
handler.postDelayed(this, 1000) // realtime decrement
|
||||
}
|
||||
})
|
||||
|
||||
playerBinding?.exoDuration?.isInvisible = true
|
||||
playerBinding?.timeLeft?.isVisible = true
|
||||
}
|
||||
|
||||
private fun stopUpdatingRemainingTime() {
|
||||
handler.removeCallbacksAndMessages(null)
|
||||
val totalDuration = player.getDuration()?.div(1000)
|
||||
playerBinding?.exoDuration?.text = totalDuration?.let { DateUtils.formatElapsedTime(it) }
|
||||
isShowTimeRemaining = false
|
||||
playerBinding?.timeLeft?.isInvisible = true
|
||||
playerBinding?.exoDuration?.isVisible = true
|
||||
}
|
||||
|
||||
private fun dynamicOrientation(): Int {
|
||||
|
|
|
@ -518,6 +518,26 @@
|
|||
app:layout_constraintBaseline_toBaselineOf="@id/exo_position"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
tools:text="23:20" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/time_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="30dp"
|
||||
android:layout_gravity="center|center_vertical"
|
||||
|
||||
android:layout_marginEnd="20dp"
|
||||
android:includeFontPadding="false"
|
||||
android:minWidth="50dp"
|
||||
android:paddingLeft="4dp"
|
||||
android:paddingRight="4dp"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="14sp"
|
||||
android:textStyle="normal"
|
||||
app:layout_constraintBaseline_toBaselineOf="@id/exo_position"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
tools:text="-23:20"
|
||||
android:visibility="gone"/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<HorizontalScrollView
|
||||
|
|
|
@ -607,6 +607,25 @@
|
|||
app:layout_constraintBaseline_toBaselineOf="@id/exo_position"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
tools:text="23:20" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/time_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="30dp"
|
||||
android:layout_gravity="center|center_vertical"
|
||||
|
||||
android:layout_marginEnd="20dp"
|
||||
android:includeFontPadding="false"
|
||||
android:minWidth="50dp"
|
||||
android:paddingLeft="4dp"
|
||||
android:paddingRight="4dp"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="14sp"
|
||||
android:textStyle="normal"
|
||||
app:layout_constraintBaseline_toBaselineOf="@id/exo_position"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
tools:text="-23:20"
|
||||
android:visibility="gone"/>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
|
|
|
@ -506,6 +506,25 @@
|
|||
app:layout_constraintEnd_toEndOf="@id/player_fullscreen"
|
||||
tools:text="23:20" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/time_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="30dp"
|
||||
android:layout_gravity="center|center_vertical"
|
||||
|
||||
android:layout_marginEnd="30dp"
|
||||
android:includeFontPadding="false"
|
||||
android:minWidth="50dp"
|
||||
android:paddingLeft="4dp"
|
||||
android:paddingRight="4dp"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="14sp"
|
||||
android:textStyle="normal"
|
||||
app:layout_constraintBaseline_toBaselineOf="@id/exo_position"
|
||||
app:layout_constraintEnd_toEndOf="@id/player_fullscreen"
|
||||
tools:text="-23:20"
|
||||
android:visibility="gone"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/player_fullscreen"
|
||||
android:layout_width="30dp"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue