From 16ffd8b7d28ec04b7591d08cb654148545d8598e Mon Sep 17 00:00:00 2001
From: Matthias Nott <mnott@mnsoft.org>
Date: Sun, 22 Mar 2026 19:47:53 +0100
Subject: [PATCH] fix: await cross-session message storage before switch
---
lib/screens/chat_screen.dart | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/lib/screens/chat_screen.dart b/lib/screens/chat_screen.dart
index 469c57c..16069ba 100644
--- a/lib/screens/chat_screen.dart
+++ b/lib/screens/chat_screen.dart
@@ -387,10 +387,10 @@
}
/// Store a message for a non-active session so it persists when the user switches to it.
- void _storeForSession(String sessionId, Message message) {
- MessageStore.loadAll(sessionId).then((existing) {
- MessageStore.save(sessionId, [...existing, message]);
- });
+ Future<void> _storeForSession(String sessionId, Message message) async {
+ final existing = await MessageStore.loadAll(sessionId);
+ MessageStore.save(sessionId, [...existing, message]);
+ await MessageStore.flush();
}
void _incrementUnread(String sessionId) {
--
Gitblit v1.3.1