fix: refresh icon color & infinite when in portrait (#231)

quick fix for refresh features in portrait, casting them as SwipeRefreshLayout, since MidScreenSwipeRefreshLayout only exists in landscape.

Co-authored-by: Allison Cunha <allisonbzk@gmail.com>
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/231
Co-authored-by: xbzk <xbzk@noreply.localhost>
Co-committed-by: xbzk <xbzk@noreply.localhost>
This commit is contained in:
xbzk 2025-06-29 17:10:29 +00:00 committed by Bix
parent cac4345db9
commit b5b1d20e1e

View file

@ -119,16 +119,16 @@ class GamesFragment : Fragment() {
applyGridGamesBinding() applyGridGamesBinding()
binding.swipeRefresh.apply { binding.swipeRefresh.apply {
(binding.swipeRefresh as? MidScreenSwipeRefreshLayout)?.setOnRefreshListener { (binding.swipeRefresh as? SwipeRefreshLayout)?.setOnRefreshListener {
gamesViewModel.reloadGames(false) gamesViewModel.reloadGames(false)
} }
(binding.swipeRefresh as? MidScreenSwipeRefreshLayout)?.setProgressBackgroundColorSchemeColor( (binding.swipeRefresh as? SwipeRefreshLayout)?.setProgressBackgroundColorSchemeColor(
com.google.android.material.color.MaterialColors.getColor( com.google.android.material.color.MaterialColors.getColor(
binding.swipeRefresh, binding.swipeRefresh,
com.google.android.material.R.attr.colorPrimary com.google.android.material.R.attr.colorPrimary
) )
) )
(binding.swipeRefresh as? MidScreenSwipeRefreshLayout)?.setColorSchemeColors( (binding.swipeRefresh as? SwipeRefreshLayout)?.setColorSchemeColors(
com.google.android.material.color.MaterialColors.getColor( com.google.android.material.color.MaterialColors.getColor(
binding.swipeRefresh, binding.swipeRefresh,
com.google.android.material.R.attr.colorOnPrimary com.google.android.material.R.attr.colorOnPrimary
@ -138,12 +138,12 @@ class GamesFragment : Fragment() {
if (_binding == null) { if (_binding == null) {
return@post return@post
} }
(binding.swipeRefresh as? MidScreenSwipeRefreshLayout)?.isRefreshing = gamesViewModel.isReloading.value (binding.swipeRefresh as? SwipeRefreshLayout)?.isRefreshing = gamesViewModel.isReloading.value
} }
} }
gamesViewModel.isReloading.collect(viewLifecycleOwner) { gamesViewModel.isReloading.collect(viewLifecycleOwner) {
(binding.swipeRefresh as? MidScreenSwipeRefreshLayout)?.isRefreshing = it (binding.swipeRefresh as? SwipeRefreshLayout)?.isRefreshing = it
binding.noticeText.setVisible( binding.noticeText.setVisible(
visible = gamesViewModel.games.value.isEmpty() && !it, visible = gamesViewModel.games.value.isEmpty() && !it,
gone = false gone = false
@ -415,7 +415,7 @@ class GamesFragment : Fragment() {
val spacingNavigation = resources.getDimensionPixelSize(R.dimen.spacing_navigation) val spacingNavigation = resources.getDimensionPixelSize(R.dimen.spacing_navigation)
resources.getDimensionPixelSize(R.dimen.spacing_navigation_rail) resources.getDimensionPixelSize(R.dimen.spacing_navigation_rail)
(binding.swipeRefresh as? MidScreenSwipeRefreshLayout)?.setProgressViewEndTarget( (binding.swipeRefresh as? SwipeRefreshLayout)?.setProgressViewEndTarget(
false, false,
barInsets.top + resources.getDimensionPixelSize(R.dimen.spacing_refresh_end) barInsets.top + resources.getDimensionPixelSize(R.dimen.spacing_refresh_end)
) )