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

Commit 5e05b83b authored by Abhishek Aggarwal's avatar Abhishek Aggarwal
Browse files

Merge branch '4924_homescreen_stuck_issue' into 'epic_176-all-refactorAndGplay'

App Lounge: Properly navigate to signin or tos fragment as required

See merge request ecorp/apps/apps!28
parents 37eab511 1c6926b4
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -75,7 +75,6 @@ class ApplicationViewModel @Inject constructor(
        }
        // Make it a dialog-friendly string and return it
        return list.joinToString(separator = "") { "$it<br />" }

    }

    fun handleRatingFormat(rating: Double): String {
+18 −0
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import android.widget.ImageView
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.fragment.app.viewModels
import androidx.navigation.findNavController
import androidx.recyclerview.widget.LinearLayoutManager
import dagger.hilt.android.AndroidEntryPoint
import foundation.e.apps.MainActivityViewModel
@@ -52,6 +53,14 @@ class HomeFragment : Fragment(R.layout.fragment_home), FusedAPIInterface {
        super.onViewCreated(view, savedInstanceState)
        _binding = FragmentHomeBinding.bind(view)

        mainActivityViewModel.userType.observe(viewLifecycleOwner) { user ->
            if (user.isNullOrEmpty() || User.valueOf(user) == User.UNAVAILABLE) {
                mainActivityViewModel.tocStatus.observe(viewLifecycleOwner) { tosAccepted ->
                    onTosAccepted(tosAccepted)
                }
            }
        }

        mainActivityViewModel.internetConnection.observe(viewLifecycleOwner) { hasInternet ->
            mainActivityViewModel.authData.observe(viewLifecycleOwner) { authData ->
                if (hasInternet) {
@@ -101,4 +110,13 @@ class HomeFragment : Fragment(R.layout.fragment_home), FusedAPIInterface {
    override fun cancelDownload(app: FusedApp) {
        mainActivityViewModel.cancelDownload(app)
    }

    private fun onTosAccepted(isTosAccepted: Boolean) {
        if (isTosAccepted) {
            view?.findNavController()
                ?.navigate(R.id.action_homeFragment_to_signInFragment)
        } else {
            view?.findNavController()?.navigate(R.id.action_homeFragment_to_TOSFragment)
        }
    }
}