Skip to content

Commit fbc8e62

Browse files
authored
Fix: Reset the episodeProgress view visibility to avoid recycling errors, and readded the "Upcoming Icon"
1 parent 566fd74 commit fbc8e62

File tree

1 file changed

+15
-3
lines changed

1 file changed

+15
-3
lines changed

app/src/main/java/com/lagradost/cloudstream3/ui/result/EpisodeAdapter.kt

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import androidx.core.view.setPadding
1010
import androidx.preference.PreferenceManager
1111
import androidx.recyclerview.widget.DiffUtil
1212
import androidx.recyclerview.widget.RecyclerView
13+
import coil3.load
1314
import com.lagradost.cloudstream3.APIHolder.unixTimeMS
1415
import com.lagradost.cloudstream3.CommonActivity
1516
import com.lagradost.cloudstream3.R
@@ -249,7 +250,14 @@ class EpisodeAdapter(
249250
episodeProgress.isVisible = displayPos > 0L
250251
}
251252

252-
episodePoster.loadImage(card.poster)
253+
val posterVisible = !card.poster.isNullOrBlank()
254+
if(posterVisible) {
255+
episodePoster.loadImage(card.poster)
256+
} else {
257+
// Clear the image
258+
episodePoster.load(null)
259+
}
260+
episodePoster.isVisible = posterVisible
253261

254262
if (card.score != null) {
255263
episodeRating.text = episodeRating.context?.getString(R.string.rated_format)
@@ -287,10 +295,11 @@ class EpisodeAdapter(
287295
val isUpcoming = unixTimeMS < card.airDate
288296

289297
if (isUpcoming) {
298+
episodeProgress.isVisible = false
290299
episodePlayIcon.isVisible = false
291-
episodeUpcomingIcon.isVisible = !episodePoster.isVisible
300+
episodeUpcomingIcon.isVisible = !posterVisible
292301
episodeDate.setText(
293-
com.lagradost.cloudstream3.utils.txt(
302+
txt(
294303
R.string.episode_upcoming_format,
295304
secondsToReadable(
296305
card.airDate.minus(unixTimeMS).div(1000).toInt(),
@@ -299,6 +308,7 @@ class EpisodeAdapter(
299308
)
300309
)
301310
} else {
311+
episodePlayIcon.isVisible = true
302312
episodeUpcomingIcon.isVisible = false
303313

304314
val formattedAirDate = SimpleDateFormat.getDateInstance(
@@ -310,6 +320,8 @@ class EpisodeAdapter(
310320
episodeDate.setText(txt(formattedAirDate))
311321
}
312322
} else {
323+
episodeUpcomingIcon.isVisible = false
324+
episodePlayIcon.isVisible = true
313325
episodeDate.isVisible = false
314326
}
315327

0 commit comments

Comments
 (0)