@@ -40,6 +40,7 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb
4040 private var showHidden = false
4141 private var skipItemUpdating = false
4242 private var isSearchOpen = false
43+ private var lastSearchedText = " "
4344 private var scrollStates = HashMap <String , Parcelable >()
4445
4546 private var storedItems = ArrayList <ListItem >()
@@ -266,6 +267,7 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb
266267
267268 fun searchQueryChanged (text : String ) {
268269 val searchText = text.trim()
270+ lastSearchedText = searchText
269271 Thread {
270272 if (context == null ) {
271273 return @Thread
@@ -289,6 +291,10 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb
289291 }
290292 else -> {
291293 val files = searchFiles(searchText, currentPath)
294+ if (lastSearchedText != searchText) {
295+ return @Thread
296+ }
297+
292298 val listItems = ArrayList <ListItem >()
293299
294300 var previousParent = " "
@@ -341,6 +347,7 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb
341347
342348 fun searchOpened () {
343349 isSearchOpen = true
350+ lastSearchedText = " "
344351 }
345352
346353 fun searchClosed () {
@@ -349,6 +356,7 @@ class ItemsFragment : Fragment(), ItemOperationsListener, Breadcrumbs.Breadcrumb
349356 getRecyclerAdapter()?.updateItems(storedItems)
350357 }
351358 skipItemUpdating = false
359+ lastSearchedText = " "
352360 }
353361
354362 private fun createNewItem () {
0 commit comments