mirror of
https://github.com/recloudstream/cloudstream.git
synced 2024-08-15 01:53:11 +00:00
Merge pull request #996 from KingLucius/playFirstUnwatched
Set play button to first unwatched Episode on TV
This commit is contained in:
commit
fb89fd60b8
1 changed files with 10 additions and 7 deletions
|
@ -781,25 +781,28 @@ class ResultFragmentTv : Fragment() {
|
|||
|
||||
// resultEpisodeLoading.isVisible = episodes is Resource.Loading
|
||||
if (episodes is Resource.Success) {
|
||||
val first = episodes.value.firstOrNull()
|
||||
if (first != null) {
|
||||
|
||||
val lastWatchedIndex = episodes.value.indexOfLast { ep -> ep.videoWatchState == VideoWatchState.Watched }
|
||||
val firstUnwatched = episodes.value.getOrElse(lastWatchedIndex + 1) { episodes.value.firstOrNull() }
|
||||
|
||||
if (firstUnwatched != null) {
|
||||
resultPlaySeriesText.text =
|
||||
when {
|
||||
first.season != null ->
|
||||
"${getString(R.string.season_short)}${first.season}:${getString(R.string.episode_short)}${first.episode}"
|
||||
else -> "${getString(R.string.episode)} ${first.episode}"
|
||||
firstUnwatched.season != null ->
|
||||
"${getString(R.string.season_short)}${firstUnwatched.season}:${getString(R.string.episode_short)}${firstUnwatched.episode}"
|
||||
else -> "${getString(R.string.episode)} ${firstUnwatched.episode}"
|
||||
}
|
||||
resultPlaySeriesButton.setOnClickListener {
|
||||
viewModel.handleAction(
|
||||
EpisodeClickEvent(
|
||||
ACTION_CLICK_DEFAULT,
|
||||
first
|
||||
firstUnwatched
|
||||
)
|
||||
)
|
||||
}
|
||||
resultPlaySeriesButton.setOnLongClickListener {
|
||||
viewModel.handleAction(
|
||||
EpisodeClickEvent(ACTION_SHOW_OPTIONS, first)
|
||||
EpisodeClickEvent(ACTION_SHOW_OPTIONS, firstUnwatched)
|
||||
)
|
||||
return@setOnLongClickListener true
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue