From 7bb73c80b07275e2bd3a6b2dee0a80aeed7569bb Mon Sep 17 00:00:00 2001 From: LittleSheep Date: Sat, 1 Mar 2025 22:52:22 +0800 Subject: [PATCH] :bug: Fixes on load new messages --- lib/controllers/chat_message_controller.dart | 8 +++++++- lib/providers/websocket.dart | 4 +++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/lib/controllers/chat_message_controller.dart b/lib/controllers/chat_message_controller.dart index faed2a2..686ee9a 100644 --- a/lib/controllers/chat_message_controller.dart +++ b/lib/controllers/chat_message_controller.dart @@ -352,7 +352,13 @@ class ChatMessageController extends ChangeNotifier { final countToFetch = math.min(resp.data['count'] as int, 100); for (int idx = 0; idx < countToFetch; idx += kSingleBatchLoadLimit) { - await getMessages(kSingleBatchLoadLimit, idx, forceRemote: true); + final out = await getMessages( + kSingleBatchLoadLimit, + idx, + forceRemote: true, + ); + messages.insertAll(0, out); + notifyListeners(); } } catch (err) { rethrow; diff --git a/lib/providers/websocket.dart b/lib/providers/websocket.dart index c72c2e0..91003ec 100644 --- a/lib/providers/websocket.dart +++ b/lib/providers/websocket.dart @@ -78,7 +78,9 @@ class WebSocketProvider extends ChangeNotifier { } catch (err) { if (err is WebSocketChannelException) { logging.error( - '[WebSocket] Failed to connect to websocket...', err.inner); + '[WebSocket] Failed to connect to websocket...', + err.inner, + ); } else { logging.error('[WebSocket] Failed to connect to websocket...', err); }