chore: Follow up pinned events allow unpin via appbar button

onboarding
Christian Pauly 4 years ago committed by Krille Fear
parent 9c36a52308
commit 61749a0e6a

@ -883,13 +883,21 @@ class ChatController extends State<Chat> {
} }
void pinEvent() { void pinEvent() {
final room = this.room;
if (room == null) return;
final pinnedEventIds = room.pinnedEventIds;
final selectedEventIds = selectedEvents.map((e) => e.eventId).toSet();
final pin = selectedEventIds.any((e) => !pinnedEventIds.contains(e));
showFutureLoadingDialog( showFutureLoadingDialog(
context: context, context: context,
future: () => room!.setPinnedEvents( future: () => room.setPinnedEvents(
<String>{ pin
...room!.pinnedEventIds, ? <String>{
...pinnedEventIds,
...selectedEvents.map((e) => e.eventId), ...selectedEvents.map((e) => e.eventId),
}.toList(), }.toList()
: pinnedEventIds
..removeWhere(selectedEventIds.contains),
), ),
); );
} }

Loading…
Cancel
Save