Retain palette collapse and filter to localStorage

This commit is contained in:
GogoVega 2024-03-25 20:47:55 +01:00
parent 50baad9624
commit 9a07fc03c6
No known key found for this signature in database
GPG Key ID: E1E048B63AC5AC2B

View File

@ -73,11 +73,15 @@ RED.palette = (function() {
$("#red-ui-palette-header-"+category+" i").addClass("expanded");
},
toggle: function() {
const collapse = JSON.parse(localStorage.getItem("palette-collapse") || "[]");
if (catDiv.hasClass("red-ui-palette-open")) {
categoryContainers[category].close();
collapse.push(category);
} else {
categoryContainers[category].open();
collapse.splice(collapse.indexOf(category), 1);
}
localStorage.setItem("palette-collapse", JSON.stringify(collapse.filter((c, i, array) => array.indexOf(c) === i)));
}
};
@ -602,8 +606,9 @@ RED.palette = (function() {
delay: 100,
change: function() {
filterChange($(this).val());
localStorage.setItem("palette-filter", $(this).val());
}
})
});
sidebarControls = $('<div class="red-ui-sidebar-control-left"><i class="fa fa-chevron-left"></i></div>').appendTo($("#red-ui-palette"));
RED.popover.tooltip(sidebarControls,RED._("keyboard.togglePalette"),"core:toggle-palette");
@ -669,6 +674,12 @@ RED.palette = (function() {
togglePalette(state);
}
});
const collapse = JSON.parse(localStorage.getItem("palette-collapse") || "[]");
setTimeout(function () {
collapse.forEach((category) => categoryContainers[category]?.close());
$("#red-ui-palette-search input").searchBox("value", (localStorage.getItem("palette-filter") || ""));
}, 1000);
}
function togglePalette(state) {
if (!state) {