Avoid mainthread db query

This commit is contained in:
tarsin committed 2023-05-27 20:01:26 +08:00
1 parent 17fb0f724c
commit a7214740ec
2 files changed
+8 -3

No files matched your search

@@ -20,6 +20,7 @@ interface SearchDao {
fun addQuery(query: String) {
deleteQuery(query)
if (query.isBlank()) return
val search = Search(System.currentTimeMillis(), query)
insert(search)
}
@@ -162,7 +162,7 @@ abstract class SearchBarScene : BaseScene(), ToolBarScene {
if (!mAllowEmptySearch && query.isEmpty()) {
return
}
mSearchDatabase.addQuery(query)
lifecycleScope.launchIO { mSearchDatabase.addQuery(query) }
onApplySearch(query)
}
@@ -285,8 +285,12 @@ abstract class SearchBarScene : BaseScene(), ToolBarScene {
.setMessage(requireContext().getString(R.string.delete_search_history, mKeyword))
.setNegativeButton(android.R.string.cancel, null)
.setPositiveButton(R.string.delete) { _, _ ->
mSearchDatabase.deleteQuery(mKeyword)
updateSuggestions(false)
lifecycleScope.launchIO {
mSearchDatabase.deleteQuery(mKeyword)
withUIContext {
updateSuggestions(false)
}
}
}
.show()
return true