11package com.firebase.ui.auth.compose
22
3+ import android.content.Intent
34import androidx.activity.compose.rememberLauncherForActivityResult
45import androidx.compose.runtime.Composable
5- import androidx.compose.runtime.LaunchedEffect
66import androidx.compose.runtime.remember
7+ import androidx.compose.runtime.rememberCoroutineScope
78import androidx.compose.ui.platform.LocalContext
89import com.firebase.ui.auth.AuthUI
910import com.firebase.ui.auth.AuthUI.IdpConfig
1011import com.firebase.ui.auth.FirebaseAuthUIActivityResultContract
1112import com.firebase.ui.auth.data.model.FirebaseAuthUIAuthenticationResult
1213import com.google.firebase.auth.FirebaseAuth
14+ import kotlinx.coroutines.launch
1315
1416/* *
1517 * A composable function that provides Firebase Auth UI functionality.
@@ -37,6 +39,7 @@ fun FirebaseAuthUI(
3739 val context = LocalContext .current
3840 val auth = remember { FirebaseAuth .getInstance() }
3941 val authUI = remember { AuthUI .getInstance() }
42+ val scope = rememberCoroutineScope()
4043
4144 val signInLauncher = rememberLauncherForActivityResult(
4245 contract = FirebaseAuthUIActivityResultContract (),
@@ -58,9 +61,12 @@ fun FirebaseAuthUI(
5861 }
5962 }
6063 .build()
64+ .apply {
65+ addFlags(Intent .FLAG_ACTIVITY_CLEAR_TOP or Intent .FLAG_ACTIVITY_NEW_TASK )
66+ }
6167 }
6268
63- LaunchedEffect ( Unit ) {
69+ scope.launch {
6470 signInLauncher.launch(signInIntent)
6571 }
6672}
0 commit comments