mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-08-14 18:00:25 +00:00
Both iOS surfaces refreshed chatModel.users - and their own copy of it - immediately after creating the profile, before checking whether the core had honoured keepActiveUser. On the path where it did not, that list already has the new profile marked active while chatModel.currentUser is still the previous one, so anything derived from users disagrees with the active user until the resync lands. Kotlin checks first and never opens that window. Moving the check up also drops the refresh from that path entirely, since changeActiveUserAsync_ does its own, and lets the remaining refresh share the MainActor.run that was already there.