Fix preset sorting

This commit is contained in:
Blaz Kristan 2024-02-03 19:24:08 +01:00
parent 9ce485eade
commit 00038453e1

View File

@ -2802,6 +2802,7 @@ function search(field, listId = null) {
if (!listId) return;
const search = field.value !== '';
const presets = listId === 'pcont';
// clear filter if searching in fxlist
if (listId === 'fxlist' && search) {
@ -2813,7 +2814,7 @@ function search(field, listId = null) {
const listItems = gId(listId).querySelectorAll('.lstI');
// filter list items but leave (Default & Solid) always visible
for (i = (listId === 'pcont' ? 0 : 1); i < listItems.length; i++) {
for (i = (presets ? 0 : 1); i < listItems.length; i++) {
const listItem = listItems[i];
const listItemName = listItem.querySelector('.lstIname').innerText.toUpperCase();
const searchIndex = listItemName.indexOf(field.value.toUpperCase());
@ -2821,6 +2822,7 @@ function search(field, listId = null) {
listItem.dataset.searchIndex = searchIndex;
}
if (!presets) {
// sort list items by search index and name
const sortedListItems = Array.from(listItems).sort((a, b) => {
const aSearchIndex = parseInt(a.dataset.searchIndex);
@ -2845,6 +2847,7 @@ function search(field, listId = null) {
firstVisibleItem.scrollIntoView({ behavior: "instant", block: "center" });
}
}
}
function clean(clearButton) {
clearButton.style.display = 'none';