RoomListFiltersEvents -> RoomListFiltersEvent
This commit is contained in:
parent
c92d34f46a
commit
5eccea5ada
7 changed files with 18 additions and 18 deletions
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
package io.element.android.features.home.impl.filters
|
||||
|
||||
sealed interface RoomListFiltersEvents {
|
||||
data class ToggleFilter(val filter: RoomListFilter) : RoomListFiltersEvents
|
||||
data object ClearSelectedFilters : RoomListFiltersEvents
|
||||
sealed interface RoomListFiltersEvent {
|
||||
data class ToggleFilter(val filter: RoomListFilter) : RoomListFiltersEvent
|
||||
data object ClearSelectedFilters : RoomListFiltersEvent
|
||||
}
|
||||
|
|
@ -28,12 +28,12 @@ class RoomListFiltersPresenter(
|
|||
|
||||
@Composable
|
||||
override fun present(): RoomListFiltersState {
|
||||
fun handleEvent(event: RoomListFiltersEvents) {
|
||||
fun handleEvent(event: RoomListFiltersEvent) {
|
||||
when (event) {
|
||||
RoomListFiltersEvents.ClearSelectedFilters -> {
|
||||
RoomListFiltersEvent.ClearSelectedFilters -> {
|
||||
filterSelectionStrategy.clear()
|
||||
}
|
||||
is RoomListFiltersEvents.ToggleFilter -> {
|
||||
is RoomListFiltersEvent.ToggleFilter -> {
|
||||
filterSelectionStrategy.toggle(event.filter)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ import kotlinx.collections.immutable.toImmutableList
|
|||
|
||||
data class RoomListFiltersState(
|
||||
val filterSelectionStates: ImmutableList<FilterSelectionState>,
|
||||
val eventSink: (RoomListFiltersEvents) -> Unit,
|
||||
val eventSink: (RoomListFiltersEvent) -> Unit,
|
||||
) {
|
||||
val hasAnyFilterSelected = filterSelectionStates.any { it.isSelected }
|
||||
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ class RoomListFiltersStateProvider : PreviewParameterProvider<RoomListFiltersSta
|
|||
|
||||
fun aRoomListFiltersState(
|
||||
filterSelectionStates: List<FilterSelectionState> = RoomListFilter.entries.map { FilterSelectionState(it, isSelected = false) },
|
||||
eventSink: (RoomListFiltersEvents) -> Unit = {},
|
||||
eventSink: (RoomListFiltersEvent) -> Unit = {},
|
||||
) = RoomListFiltersState(
|
||||
filterSelectionStates = filterSelectionStates.toImmutableList(),
|
||||
eventSink = eventSink,
|
||||
|
|
|
|||
|
|
@ -60,11 +60,11 @@ fun RoomListFiltersView(
|
|||
modifier: Modifier = Modifier
|
||||
) {
|
||||
fun onClearFiltersClick() {
|
||||
state.eventSink(RoomListFiltersEvents.ClearSelectedFilters)
|
||||
state.eventSink(RoomListFiltersEvent.ClearSelectedFilters)
|
||||
}
|
||||
|
||||
fun onToggleFilter(filter: RoomListFilter) {
|
||||
state.eventSink(RoomListFiltersEvents.ToggleFilter(filter))
|
||||
state.eventSink(RoomListFiltersEvent.ToggleFilter(filter))
|
||||
}
|
||||
|
||||
var scrollToStart by remember { mutableIntStateOf(0) }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue