From 8ad1a379916ee3626bbf8c185eae01246bfe31d9 Mon Sep 17 00:00:00 2001 From: Nik Clayton Date: Fri, 24 Jan 2025 17:40:15 +0100 Subject: [PATCH] refactor: Collect distinct loadstates to minimise churn (#1230) --- .../pachli/components/notifications/NotificationsFragment.kt | 2 +- .../java/app/pachli/components/timeline/TimelineFragment.kt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/app/pachli/components/notifications/NotificationsFragment.kt b/app/src/main/java/app/pachli/components/notifications/NotificationsFragment.kt index e369e47f4..b3fc9ea00 100644 --- a/app/src/main/java/app/pachli/components/notifications/NotificationsFragment.kt +++ b/app/src/main/java/app/pachli/components/notifications/NotificationsFragment.kt @@ -244,7 +244,7 @@ class NotificationsFragment : } // Update the UI from the loadState - adapter.loadStateFlow.collect { loadState -> + adapter.loadStateFlow.distinctUntilChangedBy { it.refresh }.collect { loadState -> when (loadState.refresh) { is LoadState.Error -> { binding.progressIndicator.hide() diff --git a/app/src/main/java/app/pachli/components/timeline/TimelineFragment.kt b/app/src/main/java/app/pachli/components/timeline/TimelineFragment.kt index 927281d3d..564b54677 100644 --- a/app/src/main/java/app/pachli/components/timeline/TimelineFragment.kt +++ b/app/src/main/java/app/pachli/components/timeline/TimelineFragment.kt @@ -251,7 +251,7 @@ class TimelineFragment : } } - adapter.loadStateFlow.collect { loadState -> + adapter.loadStateFlow.distinctUntilChangedBy { it.refresh }.collect { loadState -> when (loadState.refresh) { is LoadState.Error -> { binding.progressIndicator.hide()