chore: Display stories seenByUsers

This commit is contained in:
Christian Pauly 2021-12-26 09:59:34 +01:00
commit 7daf34c13e
3 changed files with 88 additions and 6 deletions

View file

@ -69,20 +69,19 @@ extension RoomStatusExtension on Room {
}
List<User> getSeenByUsers(
Timeline timeline,
List<Event> filteredEvents,
Set<String> unfolded,
) {
Timeline timeline, List<Event> filteredEvents, Set<String> unfolded,
{String? eventId}) {
if (timeline.events.isEmpty) return [];
final filteredEvents = timeline.getFilteredEvents(unfolded: unfolded);
if (filteredEvents.isEmpty) return [];
eventId ??= filteredEvents.first.eventId;
final lastReceipts = <User>{};
// now we iterate the timeline events until we hit the first rendered event
for (final event in timeline.events) {
lastReceipts.addAll(event.receipts.map((r) => r.user));
if (event.eventId == filteredEvents.first.eventId) {
if (event.eventId == eventId) {
break;
}
}