From 95d53e495c66fd0c785397c64991a0d17509b767 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sun, 18 Oct 2020 23:56:13 +0530 Subject: PasswordRepository: split out PasswordSortOrder Signed-off-by: Harsh Shandilya --- .../com/zeapo/pwdstore/SearchableRepositoryViewModel.kt | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'app/src/main/java/com/zeapo/pwdstore/SearchableRepositoryViewModel.kt') diff --git a/app/src/main/java/com/zeapo/pwdstore/SearchableRepositoryViewModel.kt b/app/src/main/java/com/zeapo/pwdstore/SearchableRepositoryViewModel.kt index a73dd40d..7ac2bfc7 100644 --- a/app/src/main/java/com/zeapo/pwdstore/SearchableRepositoryViewModel.kt +++ b/app/src/main/java/com/zeapo/pwdstore/SearchableRepositoryViewModel.kt @@ -28,6 +28,7 @@ import com.zeapo.pwdstore.autofill.oreo.AutofillPreferences import com.zeapo.pwdstore.autofill.oreo.DirectoryStructure import com.zeapo.pwdstore.utils.PasswordItem import com.zeapo.pwdstore.utils.PasswordRepository +import com.zeapo.pwdstore.utils.PasswordSortOrder import com.zeapo.pwdstore.utils.PreferenceKeys import com.zeapo.pwdstore.utils.sharedPrefs import java.io.File @@ -87,16 +88,16 @@ private val CaseInsensitiveComparator = Collator.getInstance().apply { } private fun PasswordItem.Companion.makeComparator( - typeSortOrder: PasswordRepository.PasswordSortOrder, + typeSortOrder: PasswordSortOrder, directoryStructure: DirectoryStructure ): Comparator { return when (typeSortOrder) { - PasswordRepository.PasswordSortOrder.FOLDER_FIRST -> compareBy { it.type } + PasswordSortOrder.FOLDER_FIRST -> compareBy { it.type } // In order to let INDEPENDENT not distinguish between items based on their type, we simply // declare them all equal at this stage. - PasswordRepository.PasswordSortOrder.INDEPENDENT -> Comparator { _, _ -> 0 } - PasswordRepository.PasswordSortOrder.FILE_FIRST -> compareByDescending { it.type } - PasswordRepository.PasswordSortOrder.RECENTLY_USED -> PasswordRepository.PasswordSortOrder.RECENTLY_USED.comparator + PasswordSortOrder.INDEPENDENT -> Comparator { _, _ -> 0 } + PasswordSortOrder.FILE_FIRST -> compareByDescending { it.type } + PasswordSortOrder.RECENTLY_USED -> PasswordSortOrder.RECENTLY_USED.comparator } .then(compareBy(nullsLast(CaseInsensitiveComparator)) { directoryStructure.getIdentifierFor(it.file) @@ -150,7 +151,7 @@ class SearchableRepositoryViewModel(application: Application) : AndroidViewModel } private val typeSortOrder - get() = PasswordRepository.PasswordSortOrder.getSortOrder(settings) + get() = PasswordSortOrder.getSortOrder(settings) private val directoryStructure get() = AutofillPreferences.directoryStructure(getApplication()) private val itemComparator -- cgit v1.2.3