From 6d66593688d465bd9b40a964e3f2ffa66bc425c1 Mon Sep 17 00:00:00 2001 From: Evgeny Poberezkin Date: Thu, 1 Aug 2024 21:53:29 +0100 Subject: [PATCH] better updateChats --- apps/ios/Shared/Model/ChatModel.swift | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/apps/ios/Shared/Model/ChatModel.swift b/apps/ios/Shared/Model/ChatModel.swift index 59b8ffbe60..21674e3960 100644 --- a/apps/ios/Shared/Model/ChatModel.swift +++ b/apps/ios/Shared/Model/ChatModel.swift @@ -298,7 +298,11 @@ final class ChatModel: ObservableObject { chat.chatItems = c.chatItems chat.chatStats = c.chatStats if i != j { - chatsToPop.insert(c.chatInfo.id) + if chatId != c.chatInfo.id { + popChat_(j, to: i) + } else if i == 0 { + chatsToPop.insert(c.chatInfo.id) + } } } else { addChat(Chat(c), at: i) @@ -672,6 +676,11 @@ final class ChatModel: ObservableObject { } } + private func popChat_(_ i: Int, to position: Int = 0) { + let chat = chats.remove(at: i) + chats.insert(chat, at: position) + } + private func markChatItemRead_(_ i: Int) { let meta = im.reversedChatItems[i].meta if case .rcvNew = meta.itemStatus {