From 46e29cfc481a0c4c35bf30bcee75a2eb9087020e Mon Sep 17 00:00:00 2001 From: razeeman Date: Sun, 15 Jan 2023 15:36:45 +0300 Subject: [PATCH] fix records all crash when changing sort order on big list --- .../feature_records_all/viewModel/RecordsAllViewModel.kt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/features/feature_records_all/src/main/java/com/example/util/simpletimetracker/feature_records_all/viewModel/RecordsAllViewModel.kt b/features/feature_records_all/src/main/java/com/example/util/simpletimetracker/feature_records_all/viewModel/RecordsAllViewModel.kt index 014fcc7f..63d8533e 100644 --- a/features/feature_records_all/src/main/java/com/example/util/simpletimetracker/feature_records_all/viewModel/RecordsAllViewModel.kt +++ b/features/feature_records_all/src/main/java/com/example/util/simpletimetracker/feature_records_all/viewModel/RecordsAllViewModel.kt @@ -4,6 +4,7 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope +import com.example.util.simpletimetracker.core.extension.set import com.example.util.simpletimetracker.core.extension.toParams import com.example.util.simpletimetracker.feature_base_adapter.ViewHolderType import com.example.util.simpletimetracker.feature_base_adapter.loader.LoaderViewData @@ -82,6 +83,7 @@ class RecordsAllViewModel @Inject constructor( fun onRecordTypeOrderSelected(position: Int) { sortOrder = recordsAllViewDataMapper.toSortOrder(position) + records.set(listOf(LoaderViewData())) updateRecords() updateSortOrderViewData() } @@ -97,7 +99,7 @@ class RecordsAllViewModel @Inject constructor( private fun updateRecords() = viewModelScope.launch { val data = loadRecordsViewData() - (records as MutableLiveData).value = data + records.set(data) } private suspend fun loadRecordsViewData(): List { @@ -112,7 +114,7 @@ class RecordsAllViewModel @Inject constructor( private fun updateSortOrderViewData() { val data = loadSortOrderViewData() - (sortOrderViewData as MutableLiveData).value = data + sortOrderViewData.set(data) } private fun loadSortOrderViewData(): RecordsAllSortOrderViewData { -- 2.51.2