Fix to-do's not moving off screen when being checked off

Fix to-do's task fragment showing filter active when none were
This commit is contained in:
Hafiz 2025-06-21 13:57:07 -05:00
parent 6d705325fe
commit ce2a9df782
2 changed files with 18 additions and 8 deletions

View file

@ -581,12 +581,19 @@ open class TaskRecyclerViewFragment :
if (it != null) {
when (taskType) {
TaskType.TODO -> {
viewModel.setActiveFilter(
TaskType.TODO,
viewModel.getTaskFilterPreference(TaskType.TODO)
)
// Handle case where a initial filter preference for to-dos were set for FILTER_ALL
if (viewModel.getTaskFilterPreference(TaskType.TODO) == Task.FILTER_ALL) {
viewModel.setActiveFilter(
TaskType.TODO,
Task.FILTER_ACTIVE
)
} else {
viewModel.setActiveFilter(
TaskType.TODO,
viewModel.getTaskFilterPreference(TaskType.TODO)
)
}
}
TaskType.DAILY -> {
if (!viewModel.initialPreferenceFilterSet) {
viewModel.initialPreferenceFilterSet = true

View file

@ -199,9 +199,12 @@ constructor(
if (activeFilters[type] == null) {
return false
}
return if (TaskType.TODO == type) {
Task.FILTER_ACTIVE != activeFilters[type]
when(activeFilters[type]) {
Task.FILTER_ACTIVE -> false
Task.FILTER_ALL -> false
else -> true
}
} else {
Task.FILTER_ALL != activeFilters[type]
}
@ -289,7 +292,7 @@ constructor(
fun getTaskFilterPreference(
type: TaskType
): String {
return sharedPreferences.getString("filter_${type.value}", Task.FILTER_ALL) ?: Task.FILTER_ALL
return sharedPreferences.getString("filter_${type.value}", Task.FILTER_ALL) ?: if (TaskType.TODO == type) Task.FILTER_ACTIVE else Task.FILTER_ALL
}
fun createQuery(unfilteredData: OrderedRealmCollection<Task>): RealmQuery<Task>? {