From aae9762a8eb1fd560e30ce83de3474edf7637ae3 Mon Sep 17 00:00:00 2001 From: MM20 <15646950+MM2-0@users.noreply.github.com> Date: Sun, 11 Sep 2022 18:44:55 +0200 Subject: [PATCH] Fix favorites sorting --- .../de/mm20/launcher2/ui/launcher/search/SearchVM.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ui/src/main/java/de/mm20/launcher2/ui/launcher/search/SearchVM.kt b/ui/src/main/java/de/mm20/launcher2/ui/launcher/search/SearchVM.kt index bccf1d6f..c60df06d 100644 --- a/ui/src/main/java/de/mm20/launcher2/ui/launcher/search/SearchVM.kt +++ b/ui/src/main/java/de/mm20/launcher2/ui/launcher/search/SearchVM.kt @@ -118,6 +118,7 @@ class SearchVM : ViewModel(), KoinComponent { appRepository .search(query) .withCustomLabels() + .sorted() .collectLatest { apps -> hiddenItemKeys.collectLatest { hiddenKeys -> val results = apps.partition { !hiddenKeys.contains(it.key) } @@ -132,6 +133,7 @@ class SearchVM : ViewModel(), KoinComponent { contactRepository .search(query) .withCustomLabels() + .sorted() .collectLatest { contacts -> hiddenItemKeys.collectLatest { hiddenKeys -> val results = contacts.partition { !hiddenKeys.contains(it.key) } @@ -146,6 +148,7 @@ class SearchVM : ViewModel(), KoinComponent { calendarRepository .search(query) .withCustomLabels() + .sorted() .collectLatest { events -> hiddenItemKeys.collectLatest { hiddenKeys -> val results = events.partition { !hiddenKeys.contains(it.key) } @@ -180,6 +183,7 @@ class SearchVM : ViewModel(), KoinComponent { fileRepository .search(query) .withCustomLabels() + .sorted() .collectLatest { files -> hiddenItemKeys.collectLatest { hiddenKeys -> val results = files.partition { !hiddenKeys.contains(it.key) } @@ -199,6 +203,7 @@ class SearchVM : ViewModel(), KoinComponent { appShortcutRepository .search(query) .withCustomLabels() + .sorted() .collectLatest { shortcuts -> hiddenItemKeys.collectLatest { hidden -> appShortcutResults.postValue(shortcuts.filter { !hidden.contains(it.key) }) @@ -303,11 +308,13 @@ class SearchVM : ViewModel(), KoinComponent { val customLabel = labels.find { it.key == item.key } item.labelOverride = customLabel?.label } - send(items.sorted()) + send(items) } } } + private fun Flow>.sorted(): Flow> = this.map { it.sorted() } + } private data class HiddenItemResults(