From a745d3ce68dabd1ca0388825e1aea74aa18289b6 Mon Sep 17 00:00:00 2001 From: Christian Pauly Date: Thu, 12 Aug 2021 12:33:41 +0200 Subject: [PATCH] fix: Wait for sync before enter a room a user has got invited --- lib/widgets/list_items/chat_list_item.dart | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/widgets/list_items/chat_list_item.dart b/lib/widgets/list_items/chat_list_item.dart index cb33c89a..eb9123d4 100644 --- a/lib/widgets/list_items/chat_list_item.dart +++ b/lib/widgets/list_items/chat_list_item.dart @@ -39,7 +39,16 @@ class ChatListItem extends StatelessWidget { if (!activeChat) { if (room.membership == Membership.invite && (await showFutureLoadingDialog( - context: context, future: () => room.join())) + context: context, + future: () async { + final joinedFuture = room.client.onRoomUpdate.stream + .where((u) => + u.id == room.id && + u.membership == Membership.join) + .first; + await room.join(); + await joinedFuture; + })) .error != null) { return;