Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b14986d0 authored by Abhishek Aggarwal's avatar Abhishek Aggarwal Committed by Aayush Gupta
Browse files

App Lounge: Save user for google auth only on success

parent cff190ed
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -75,7 +75,7 @@ class MainActivity : AppCompatActivity() {
                        viewModel.destroyCredentials()
                        navController.navigate(R.id.signInFragment, null, navOptions)
                    }
                    USER.GOOGLE -> {}
                    User.GOOGLE -> {}
                }
            }
        }
+2 −16
Original line number Diff line number Diff line
@@ -22,26 +22,12 @@ class SignInFragment : Fragment(R.layout.fragment_sign_in) {
        _binding = FragmentSignInBinding.bind(view)

        binding.googleBT.setOnClickListener {
            viewModel.saveUserType(User.GOOGLE)
            view.findNavController().navigate(R.id.googleSignInFragment)
        }

        binding.anonymousBT.setOnClickListener {
            viewModel.saveUserType(User.ANONYMOUS)
        }

        viewModel.userType.observe(viewLifecycleOwner) {
            if (it.isNotBlank()) {
                when (User.valueOf(it)) {
                    User.ANONYMOUS -> {
                        view.findNavController()
                            .navigate(R.id.action_signInFragment_to_homeFragment)
                    }
                    User.GOOGLE -> {
                        view.findNavController().navigate(R.id.googleSignInFragment)
                    }
                    User.UNAVAILABLE -> {}
                }
            }
            view.findNavController().navigate(R.id.action_signInFragment_to_homeFragment)
        }
    }

+11 −0
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ import foundation.e.apps.R
import foundation.e.apps.api.gplay.utils.AC2DMUtil
import foundation.e.apps.databinding.FragmentGoogleSigninBinding
import foundation.e.apps.setup.signin.SignInViewModel
import foundation.e.apps.utils.enums.User
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers

@@ -63,6 +64,7 @@ class GoogleSignInFragment :

        mainActivityViewModel.authDataJson.observe(viewLifecycleOwner) {
            if (!it.isNullOrEmpty()) {
                viewModel.saveUserType(User.GOOGLE)
                view.findNavController().navigate(R.id.action_googleSignInFragment_to_homeFragment)
            }
        }
@@ -102,5 +104,14 @@ class GoogleSignInFragment :
            }
            loadUrl(EMBEDDED_SETUP_URL)
        }

        binding.toolbar.setNavigationOnClickListener {
            it.findNavController().navigate(R.id.action_googleSignInFragment_to_signInFragment)
        }
    }

    override fun onDestroy() {
        super.onDestroy()
        _binding = null
    }
}
+10 −1
Original line number Diff line number Diff line
@@ -19,10 +19,19 @@

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    android:layout_height="match_parent"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical">

    <androidx.appcompat.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:navigationIcon="@drawable/ic_arrow_back"/>

    <WebView
        android:id="@+id/webview"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</LinearLayout>
+9 −1
Original line number Diff line number Diff line
@@ -187,6 +187,9 @@
            app:destination="@id/homeFragment"
            app:popUpTo="@+id/signInFragment"
            app:popUpToInclusive="true" />
        <action
            android:id="@+id/action_signInFragment_to_googleSignInFragment"
            app:destination="@id/googleSignInFragment" />
    </fragment>
    <fragment
        android:id="@+id/googleSignInFragment"
@@ -198,5 +201,10 @@
            app:destination="@id/homeFragment"
            app:popUpTo="@+id/signInFragment"
            app:popUpToInclusive="true" />
        <action
            android:id="@+id/action_googleSignInFragment_to_signInFragment"
            app:destination="@id/signInFragment"
            app:popUpTo="@id/googleSignInFragment"
            app:popUpToInclusive="true" />
    </fragment>
</navigation>