use onbackpressurebuffer in anime contexts

This commit is contained in:
jmir1 2021-06-08 21:23:46 +02:00
parent 096ea0822f
commit eff1bb56ee
4 changed files with 6 additions and 7 deletions

View file

@ -31,7 +31,7 @@ android {
targetSdkVersion(AndroidConfig.targetSdk)
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
versionCode = 63
versionName = "0.11.1.3-mi"
versionName = "0.11.1.4-mi"
buildConfigField("String", "COMMIT_COUNT", "\"${getCommitCount()}\"")
buildConfigField("String", "COMMIT_SHA", "\"${getGitSha()}\"")

View file

@ -366,7 +366,7 @@ class AnimePresenter(
observeDownloadsStatusSubscription?.let { remove(it) }
observeDownloadsStatusSubscription = downloadManager.queue.getStatusObservable()
.observeOn(Schedulers.io())
.onBackpressureLatest()
.onBackpressureBuffer()
.filter { download -> download.anime.id == anime.id }
.observeOn(AndroidSchedulers.mainThread())
.subscribeLatestCache(
@ -382,7 +382,7 @@ class AnimePresenter(
observeDownloadsPageSubscription?.let { remove(it) }
observeDownloadsPageSubscription = downloadManager.queue.getProgressObservable()
.observeOn(Schedulers.io())
.onBackpressureLatest()
.onBackpressureBuffer()
.filter { download -> download.anime.id == anime.id }
.observeOn(AndroidSchedulers.mainThread())
.subscribeLatestAnimeCache(AnimeController::onEpisodeDownloadUpdate) { _, error ->

View file

@ -48,8 +48,6 @@ class EpisodeDownloadView @JvmOverloads constructor(context: Context, attrs: Att
state == AnimeDownload.State.NOT_DOWNLOADED || state == AnimeDownload.State.QUEUE
if (shouldBeVisible) {
hideAnimationBehavior = BaseProgressIndicator.HIDE_NONE
show()
if (state == AnimeDownload.State.NOT_DOWNLOADED || state == AnimeDownload.State.QUEUE) {
trackThickness = 2.dpToPx
setIndicatorColor(context.getThemeColor(android.R.attr.textColorHint))
@ -72,6 +70,7 @@ class EpisodeDownloadView @JvmOverloads constructor(context: Context, attrs: Att
setIndicatorColor(context.getThemeColor(android.R.attr.textColorPrimary))
setProgressCompat(progress, true)
}
show()
} else {
hideAnimationBehavior = BaseProgressIndicator.HIDE_OUTWARD
hide()

View file

@ -41,7 +41,7 @@ class AnimeUpdatesPresenter(
downloadManager.queue.getStatusObservable()
.observeOn(Schedulers.io())
.onBackpressureLatest()
.onBackpressureBuffer()
.observeOn(AndroidSchedulers.mainThread())
.subscribeLatestCache(
{ view, it ->
@ -55,7 +55,7 @@ class AnimeUpdatesPresenter(
downloadManager.queue.getProgressObservable()
.observeOn(Schedulers.io())
.onBackpressureLatest()
.onBackpressureBuffer()
.observeOn(AndroidSchedulers.mainThread())
.subscribeLatestCache(AnimeUpdatesController::onEpisodeDownloadUpdate) { _, error ->
Timber.e(error)