Fix crash when trying use source sort filter without a pre-selection (#2036)

(cherry picked from commit 1c982c2a01c1bba5ec4a955c9bf61cb346c752e7)

# Conflicts:
#	CHANGELOG.md
This commit is contained in:
AntsyLich 2025-04-22 19:02:52 +06:00 committed by Jobobby04
parent 6cbbaccaf4
commit 17d225b0d9

View File

@ -188,22 +188,24 @@ private fun FilterItem(filter: Filter<*>, onUpdate: () -> Unit/* SY --> */, star
) {
Column {
filter.values.mapIndexed { index, item ->
val sortAscending = filter.state?.ascending
?.takeIf { index == filter.state?.index }
SortItem(
label = item,
sortDescending = filter.state?.ascending?.not()
?.takeIf { index == filter.state?.index },
) {
val ascending = if (index == filter.state?.index) {
!filter.state!!.ascending
} else {
filter.state!!.ascending
}
filter.state = Filter.Sort.Selection(
index = index,
ascending = ascending,
)
onUpdate()
}
sortDescending = if (sortAscending != null) !sortAscending else null,
onClick = {
val ascending = if (index == filter.state?.index) {
!filter.state!!.ascending
} else {
filter.state?.ascending ?: true
}
filter.state = Filter.Sort.Selection(
index = index,
ascending = ascending,
)
onUpdate()
},
)
}
}
}