Add room list filter combining based on space selection
This commit is contained in:
parent
eb94015996
commit
915aca9c1d
7 changed files with 48 additions and 49 deletions
|
|
@ -8,6 +8,8 @@
|
|||
|
||||
package io.element.android.libraries.matrix.api.roomlist
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
|
||||
sealed interface RoomListFilter {
|
||||
companion object {
|
||||
/**
|
||||
|
|
@ -41,6 +43,10 @@ sealed interface RoomListFilter {
|
|||
val filters: List<RoomListFilter>
|
||||
) : RoomListFilter
|
||||
|
||||
data class Identifiers(
|
||||
val values : List<RoomId>,
|
||||
): RoomListFilter
|
||||
|
||||
/**
|
||||
* A filter that matches rooms that are unread.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ import org.matrix.rustcomponents.sdk.RoomListEntriesDynamicFilterKind.Any
|
|||
import org.matrix.rustcomponents.sdk.RoomListEntriesDynamicFilterKind.Category
|
||||
import org.matrix.rustcomponents.sdk.RoomListEntriesDynamicFilterKind.DeduplicateVersions
|
||||
import org.matrix.rustcomponents.sdk.RoomListEntriesDynamicFilterKind.Favourite
|
||||
import org.matrix.rustcomponents.sdk.RoomListEntriesDynamicFilterKind.Identifiers
|
||||
import org.matrix.rustcomponents.sdk.RoomListEntriesDynamicFilterKind.Invite
|
||||
import org.matrix.rustcomponents.sdk.RoomListEntriesDynamicFilterKind.NonLeft
|
||||
import org.matrix.rustcomponents.sdk.RoomListEntriesDynamicFilterKind.NonSpace
|
||||
|
|
@ -60,6 +61,7 @@ internal object RoomListFilterMapper {
|
|||
return when (filter) {
|
||||
is RoomListFilter.All -> All(filters = filter.filters.map { mapFilter(it) })
|
||||
is RoomListFilter.Any -> Any(filters = filter.filters.map { mapFilter(it) })
|
||||
is RoomListFilter.Identifiers -> Identifiers(identifiers = filter.values.map { it.value })
|
||||
RoomListFilter.None -> None
|
||||
RoomListFilter.Category.Group -> Category(RoomListFilterCategory.GROUP)
|
||||
RoomListFilter.Category.People -> Category(RoomListFilterCategory.PEOPLE)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue