search: Change order of duplicate search check
Checks for a duplicate search before setting the current search to true and before cancelling the current search. This ensures that if a duplicate search occurs while the previous search is still active, the duplicate search will not incorrectly cancel or change the state of the previous search.
This commit is contained in:
parent
fc3ad390b7
commit
72b0a3d78f
@ -498,6 +498,15 @@ const SearchResults = new Lang.Class({
|
||||
},
|
||||
|
||||
setTerms: function(terms) {
|
||||
// Check for the case of making a duplicate previous search before
|
||||
// setting state of the current search or cancelling the search.
|
||||
// This will prevent incorrect state being as a result of a duplicate
|
||||
// search while the previous search is still active.
|
||||
let searchString = terms.join(' ');
|
||||
let previousSearchString = this._terms.join(' ');
|
||||
if (searchString == previousSearchString)
|
||||
return;
|
||||
|
||||
this._startingSearch = true;
|
||||
|
||||
this._cancellable.cancel();
|
||||
@ -508,11 +517,6 @@ const SearchResults = new Lang.Class({
|
||||
return;
|
||||
}
|
||||
|
||||
let searchString = terms.join(' ');
|
||||
let previousSearchString = this._terms.join(' ');
|
||||
if (searchString == previousSearchString)
|
||||
return;
|
||||
|
||||
let isSubSearch = false;
|
||||
if (this._terms.length > 0)
|
||||
isSubSearch = searchString.indexOf(previousSearchString) == 0;
|
||||
|
Loading…
Reference in New Issue
Block a user