Introduce fun handleEvent for code consistency

This commit is contained in:
Benoit Marty
2025-11-07 12:25:15 +01:00
parent 93b80d7159
commit 21ba602073

View File

@@ -75,6 +75,15 @@ class DefaultUserListPresenter(
}.launchIn(this) }.launchIn(this)
} }
fun handleEvent(event: UserListEvents) {
when (event) {
is UserListEvents.OnSearchActiveChanged -> isSearchActive = event.active
is UserListEvents.UpdateSearchQuery -> searchQuery = event.query
is UserListEvents.AddToSelection -> userListDataStore.selectUser(event.matrixUser)
is UserListEvents.RemoveFromSelection -> userListDataStore.removeUserFromSelection(event.matrixUser)
}
}
return UserListState( return UserListState(
searchQuery = searchQuery, searchQuery = searchQuery,
searchResults = searchResults, searchResults = searchResults,
@@ -83,14 +92,7 @@ class DefaultUserListPresenter(
showSearchLoader = showSearchLoader, showSearchLoader = showSearchLoader,
selectionMode = args.selectionMode, selectionMode = args.selectionMode,
recentDirectRooms = recentDirectRooms.toImmutableList(), recentDirectRooms = recentDirectRooms.toImmutableList(),
eventSink = { event -> eventSink = ::handleEvent,
when (event) {
is UserListEvents.OnSearchActiveChanged -> isSearchActive = event.active
is UserListEvents.UpdateSearchQuery -> searchQuery = event.query
is UserListEvents.AddToSelection -> userListDataStore.selectUser(event.matrixUser)
is UserListEvents.RemoveFromSelection -> userListDataStore.removeUserFromSelection(event.matrixUser)
}
},
) )
} }
} }