diff --git a/app/src/main/java/foundation/e/apps/ui/home/HomeFragment.kt b/app/src/main/java/foundation/e/apps/ui/home/HomeFragment.kt index 1c111d5e427d87e478f393d39ff15e736adae8f9..e086de665be320f3c643a57a306f110a8f63533d 100644 --- a/app/src/main/java/foundation/e/apps/ui/home/HomeFragment.kt +++ b/app/src/main/java/foundation/e/apps/ui/home/HomeFragment.kt @@ -46,6 +46,7 @@ import foundation.e.apps.ui.application.subFrags.ApplicationDialogFragment import foundation.e.apps.ui.home.model.HomeChildRVAdapter import foundation.e.apps.ui.home.model.HomeParentRVAdapter import foundation.e.apps.ui.parentFragment.TimeoutFragment +import kotlinx.coroutines.delay import kotlinx.coroutines.launch import javax.inject.Inject @@ -68,6 +69,10 @@ class HomeFragment : TimeoutFragment(R.layout.fragment_home), ApplicationInstall @Inject lateinit var pwaManager: PWAManager + companion object { + private const val SCROLL_DELAY_IN_MILLIS = 500L + } + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) _binding = FragmentHomeBinding.bind(view) @@ -92,6 +97,12 @@ class HomeFragment : TimeoutFragment(R.layout.fragment_home), ApplicationInstall } homeParentRVAdapter?.setData(it.data!!) + + // scrolling to top 500 ms later to give time UI elements to be rendered + viewLifecycleOwner.lifecycleScope.launch { + delay(SCROLL_DELAY_IN_MILLIS) + binding.parentRV.scrollToPosition(0) + } } }