refactor: use utils.debounce

fixes socket message spam in chat resize
This commit is contained in:
Barış Soner Uşaklı
2021-10-04 10:58:32 -04:00
parent 840b49b9b2
commit a7668a7fb1
9 changed files with 68 additions and 119 deletions

View File

@@ -485,7 +485,6 @@ app.cacheBuster = null;
var searchOptions = Object.assign({ in: config.searchDefaultInQuick || 'titles' }, options.searchOptions);
var quickSearchResults = options.searchElements.resultEl;
var inputEl = options.searchElements.inputEl;
var searchTimeoutId = 0;
var oldValue = inputEl.val();
var filterCategoryEl = quickSearchResults.find('.filter-category');
@@ -556,27 +555,21 @@ app.cacheBuster = null;
doSearch();
});
inputEl.off('keyup').on('keyup', function () {
if (searchTimeoutId) {
clearTimeout(searchTimeoutId);
searchTimeoutId = 0;
}
searchTimeoutId = setTimeout(function () {
if (inputEl.val().length < 3) {
quickSearchResults.addClass('hidden');
oldValue = inputEl.val();
return;
}
if (inputEl.val() === oldValue) {
return;
}
inputEl.off('keyup').on('keyup', utils.debounce(function () {
if (inputEl.val().length < 3) {
quickSearchResults.addClass('hidden');
oldValue = inputEl.val();
if (!inputEl.is(':focus')) {
return quickSearchResults.addClass('hidden');
}
doSearch();
}, 250);
});
return;
}
if (inputEl.val() === oldValue) {
return;
}
oldValue = inputEl.val();
if (!inputEl.is(':focus')) {
return quickSearchResults.addClass('hidden');
}
doSearch();
}, 250));
var mousedownOnResults = false;
quickSearchResults.on('mousedown', function () {