From 8f235b4ff987bb359bbd9c5fd18f8ce84f890e46 Mon Sep 17 00:00:00 2001 From: TolaMironcenko Date: Sun, 27 Sep 2026 23:37:44 +0700 Subject: [PATCH] updated sheet close when successful added another acoount #4 --- Luma.xcodeproj/project.pbxproj | 2 -- Sources/Shared/UI/LoginView.swift | 8 ++++++++ 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Luma.xcodeproj/project.pbxproj b/Luma.xcodeproj/project.pbxproj index ada58bb..f384189 100644 --- a/Luma.xcodeproj/project.pbxproj +++ b/Luma.xcodeproj/project.pbxproj @@ -1765,7 +1765,6 @@ }; 371134B6F3E284082E28FE08 /* MartinOMEMO */ = { isa = XCSwiftPackageProductDependency; - package = 3B2A3CB97916A28030D0A4E0 /* XCLocalSwiftPackageReference "ThirdParty/MartinOMEMO" */; productName = MartinOMEMO; }; 4BD4324EE01A6DD46EBE7FDA /* Martin */ = { @@ -1780,7 +1779,6 @@ }; 7A670E49149C9C7E13F0A6A2 /* MartinOMEMO */ = { isa = XCSwiftPackageProductDependency; - package = 3B2A3CB97916A28030D0A4E0 /* XCLocalSwiftPackageReference "ThirdParty/MartinOMEMO" */; productName = MartinOMEMO; }; A99B4C1B1459E1C34F214164 /* OpenSSL */ = { diff --git a/Sources/Shared/UI/LoginView.swift b/Sources/Shared/UI/LoginView.swift index 908c4df..f7c3b37 100644 --- a/Sources/Shared/UI/LoginView.swift +++ b/Sources/Shared/UI/LoginView.swift @@ -2,6 +2,7 @@ import SwiftUI struct LoginView: View { @ObservedObject var model: AppModel + @Environment(\.dismiss) private var dismiss @State private var jid = "" @State private var password = "" @State private var passwordVisible = false @@ -201,6 +202,13 @@ struct LoginView: View { usesDirectTLS: directTLS ) await model.signIn(account: account, password: password) + + // When LoginView is presented from Settings, close the sheet only + // after AppModel has completed a successful sign-in. On failure the + // model clears the active account, so the form remains available for + // correcting the credentials. + guard model.account?.normalizedJID == account.normalizedJID else { return } + dismiss() } }