From 8ebac82df735316e41e99dcb8c7d07cc8ec00242 Mon Sep 17 00:00:00 2001 From: Henry-Hiles Date: Tue, 2 Jun 2026 19:58:09 -0400 Subject: [PATCH 1/2] fix race condition when loading new chat --- lib/widgets/room_chat.dart | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/widgets/room_chat.dart b/lib/widgets/room_chat.dart index d8664b1..32e97c1 100644 --- a/lib/widgets/room_chat.dart +++ b/lib/widgets/room_chat.dart @@ -90,13 +90,14 @@ class RoomChat extends HookConsumerWidget { }, [scrollController.hasClients]); useEffect(() { - if (scrollController.position.atEdge && + if (scrollController.hasClients && + scrollController.position.atEdge && scrollController.position.pixels != 0) { - WidgetsBinding.instance.addPostFrameCallback((_) { - if (scrollController.hasClients) { - scrollController.jumpTo(scrollController.position.maxScrollExtent); - } - }); + WidgetsBinding.instance.addPostFrameCallback( + (_) => scrollController.jumpTo( + scrollController.position.maxScrollExtent, + ), + ); } return null; }, [controllerData]); From ce4ade681507562849560738adeebd8f6c6ed892 Mon Sep 17 00:00:00 2001 From: Henry-Hiles Date: Tue, 2 Jun 2026 19:58:09 -0400 Subject: [PATCH 2/2] fix race condition when loading new chat --- lib/widgets/room_chat.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/widgets/room_chat.dart b/lib/widgets/room_chat.dart index d8664b1..92aa95a 100644 --- a/lib/widgets/room_chat.dart +++ b/lib/widgets/room_chat.dart @@ -90,7 +90,8 @@ class RoomChat extends HookConsumerWidget { }, [scrollController.hasClients]); useEffect(() { - if (scrollController.position.atEdge && + if (scrollController.hasClients && + scrollController.position.atEdge && scrollController.position.pixels != 0) { WidgetsBinding.instance.addPostFrameCallback((_) { if (scrollController.hasClients) {