From a4b146a2431cb87b65da2d7af1082b66c0f70452 Mon Sep 17 00:00:00 2001 From: russellwheatley Date: Mon, 27 Oct 2025 11:30:58 +0000 Subject: [PATCH] fix: ensure Facebook limited or classic login occurs when selected --- .../Sources/Services/FacebookProviderAuthUI.swift | 2 +- .../Sources/Views/SignInWithFacebookButton.swift | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Services/FacebookProviderAuthUI.swift b/FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Services/FacebookProviderAuthUI.swift index fa76d8ed3b..0fa6b66e5a 100644 --- a/FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Services/FacebookProviderAuthUI.swift +++ b/FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Services/FacebookProviderAuthUI.swift @@ -137,6 +137,6 @@ public class FacebookProviderAuthUI: AuthProviderUI { } @MainActor public func authButton() -> AnyView { - AnyView(SignInWithFacebookButton(facebookProvider: provider)) + AnyView(SignInWithFacebookButton(facebookProvider: provider as! FacebookProviderSwift)) } } diff --git a/FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Views/SignInWithFacebookButton.swift b/FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Views/SignInWithFacebookButton.swift index 96d7763422..c020b707e7 100644 --- a/FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Views/SignInWithFacebookButton.swift +++ b/FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Views/SignInWithFacebookButton.swift @@ -23,14 +23,14 @@ import SwiftUI @MainActor public struct SignInWithFacebookButton { @Environment(AuthService.self) private var authService - let facebookProvider: AuthProviderSwift + let facebookProvider: FacebookProviderSwift @State private var showCanceledAlert = false @State private var limitedLogin = true @State private var showUserTrackingAlert = false @State private var trackingAuthorizationStatus: ATTrackingManager .AuthorizationStatus = .notDetermined - public init(facebookProvider: AuthProviderSwift) { + public init(facebookProvider: FacebookProviderSwift) { self.facebookProvider = facebookProvider _trackingAuthorizationStatus = State(initialValue: ATTrackingManager .trackingAuthorizationStatus) @@ -67,6 +67,7 @@ extension SignInWithFacebookButton: View { Button(action: { Task { do { + facebookProvider.isLimitedLogin = limitedLogin try await authService.signIn(facebookProvider) } catch { switch error {