SearchVM, SearchService: improve search UX by reducing flickering (#1117)
* Fix: don't treat PH OpeningHours with specified time as `everyDay` * Use SnapshotStateList in SearchVM and don't clear search-results if there are no new search results from SearchableRepositories * Rename parameter * mergeStateLists: refactor as extension method, add apps to SearchResults by default --------- Co-authored-by: MM20 <15646950+MM2-0@users.noreply.github.com>
This commit is contained in:
@@ -30,6 +30,7 @@ interface SearchService {
|
||||
fun search(
|
||||
query: String,
|
||||
filters: SearchFilters,
|
||||
initialResults: SearchResults? = null,
|
||||
): Flow<SearchResults>
|
||||
|
||||
fun getAllApps(): Flow<AllAppsResults>
|
||||
@@ -54,9 +55,10 @@ internal class SearchServiceImpl(
|
||||
override fun search(
|
||||
query: String,
|
||||
filters: SearchFilters,
|
||||
initialResults: SearchResults?,
|
||||
): Flow<SearchResults> = flow {
|
||||
supervisorScope {
|
||||
val results = MutableStateFlow(SearchResults())
|
||||
val results = MutableStateFlow(initialResults ?: SearchResults())
|
||||
|
||||
val customAttrResults = customAttributesRepository.search(query)
|
||||
.map { items ->
|
||||
|
||||
Reference in New Issue
Block a user