@@ -17,12 +17,9 @@ import com.flixclusive.model.provider.Catalog
1717import dagger.hilt.android.lifecycle.HiltViewModel
1818import kotlinx.coroutines.Job
1919import kotlinx.coroutines.flow.SharingStarted
20- import kotlinx.coroutines.flow.collect
21- import kotlinx.coroutines.flow.combine
22- import kotlinx.coroutines.flow.distinctUntilChanged
20+ import kotlinx.coroutines.flow.collectLatest
2321import kotlinx.coroutines.flow.first
2422import kotlinx.coroutines.flow.map
25- import kotlinx.coroutines.flow.onEach
2623import kotlinx.coroutines.flow.stateIn
2724import kotlinx.coroutines.launch
2825import kotlinx.coroutines.runBlocking
@@ -98,22 +95,18 @@ class HomeScreenViewModel @Inject constructor(
9895
9996 init {
10097 viewModelScope.launch {
101- val initializationStatus = homeItemsProviderUseCase.state.map {
102- it.status
103- }.distinctUntilChanged()
104-
10598 connectionObserver
106- .combine(initializationStatus) { isConnected, status ->
107- isConnected to status
108- }
109- .onEach { (isConnected, status) ->
99+ .collectLatest { isConnected ->
100+ val status = homeItemsProviderUseCase.state.map {
101+ it.status
102+ }.first()
103+
110104 if (isConnected && status is Resource .Failure || status is Resource .Loading ) {
111105 initialize()
112106 } else if (status is Resource .Success ) {
113107 onPaginateCatalogs()
114108 }
115109 }
116- .collect()
117110 }
118111 }
119112
0 commit comments