#1098 - Working real user suggestion inside the main application.

This commit is contained in:
Stefan Ceriu
2021-10-05 14:30:31 +03:00
parent 388e521a89
commit 71667de9b1
12 changed files with 191 additions and 57 deletions
@@ -36,28 +36,20 @@ struct UserSuggestionList: View {
var body: some View {
BackgroundView {
ScrollViewReader { scrollViewReader in
List(viewModel.viewState.items) { item in
List(viewModel.viewState.items) { item in
Button {
viewModel.send(viewAction: .selectedItem(item))
} label: {
UserSuggestionListItem(
avatar: item.avatar,
displayName: item.displayName,
userId: item.id
)
.padding([.top, .bottom], 4.0)
.onTapGesture {
viewModel.send(viewAction: .selectedItem(item))
}
}
.environment(\.defaultMinListRowHeight, rowHeight)
.frame(height: min(maxHeight, rowHeight * CGFloat(viewModel.viewState.items.count)))
.onAppear(perform: {
guard let lastItemId = viewModel.viewState.items.last?.id else {
return
}
scrollViewReader.scrollTo(lastItemId)
})
}
.environment(\.defaultMinListRowHeight, rowHeight)
.frame(height: min(maxHeight, rowHeight * CGFloat(viewModel.viewState.items.count)))
}
}
}