diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/RYAActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/RYAActivity.kt index b67443d2f..4a1a81237 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/RYAActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/RYAActivity.kt @@ -37,12 +37,16 @@ class RYAActivity : BaseActivity() { } else { binding.scrollView.isVisible = true createTaskListViews(value) - viewModel.tasks.removeObserver(this) + // only remove the observer if all tasks are completed + if (viewModel.areAllTasksCompleted(value)) { + viewModel.tasks.removeObserver(this) + } } } } ) + binding.ryaButton.setOnClickListener { binding.titleView.text = getString(R.string.check_off_yesterday) binding.descriptionView.isVisible = false diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/RYAViewModel.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/RYAViewModel.kt index c426f30fe..307041d73 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/RYAViewModel.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/RYAViewModel.kt @@ -72,4 +72,9 @@ constructor( appStateManager.endLoading() } } + + fun areAllTasksCompleted(tasks: List): Boolean { + return tasks.all { it.completed } + } + }