Skip to content

Commit 9555215

Browse files
fix loading logic
1 parent 6716d66 commit 9555215

2 files changed

Lines changed: 9 additions & 7 deletions

File tree

ui/view/src/main/java/jp/dosukoi/ui/view/top/MainActivity.kt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,8 @@ class MainActivity : AppCompatActivity() {
2828
private val myPageViewModel: MyPageViewModel by produceViewModels {
2929
myPageViewModelFactory.create(viewModel)
3030
}
31-
32-
@Inject
33-
lateinit var searchViewModelFactory: SearchViewModel.Factory
34-
private val searchViewModel: SearchViewModel by produceViewModels {
35-
searchViewModelFactory.create(viewModel)
36-
}
31+
32+
private val searchViewModel: SearchViewModel by viewModels()
3733

3834
@Inject
3935
lateinit var compositionLocalProvider: CompositionLocalProvider

ui/viewModel/src/main/java/jp/dosukoi/ui/viewmodel/search/SearchViewModel.kt

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,13 @@ class SearchViewModel @Inject constructor(
8181
}
8282
}
8383
_searchUiState.update {
84-
it.copy(searchState = LoadState.Loading)
84+
when (val loadState = it.searchState) {
85+
is LoadState.Loaded -> when (loadState.data) {
86+
SearchState.Initialized, SearchState.Empty -> it.copy(searchState = LoadState.Loading)
87+
else -> it
88+
}
89+
else -> it.copy(searchState = LoadState.Loading)
90+
}
8591
}
8692
refresh(true)
8793
}

0 commit comments

Comments
 (0)