Merge pull request #178 from Lawrr/fix-refresh-resetting-loaders

Fix refresh resetting loader values to default
This commit is contained in:
pythongosssss
2024-01-31 19:38:54 +00:00
committed by GitHub
+27 -2
View File
@@ -143,14 +143,39 @@ app.registerExtension({
// Override the option values to check if we should render a menu structure
Object.defineProperty(res.widget.options, "values", {
get() {
let v = values;
if (submenuSetting.value) {
if (!menu) {
// Only build the menu once
menu = buildMenu(res.widget, values);
}
return menu;
v = menu;
}
return values;
const valuesIncludes = v.includes;
v.includes = function (searchElement) {
const includesFromMenuItems = function (items) {
for (const item of items) {
if (includesFromMenuItem(item)) {
return true;
}
}
return false;
}
const includesFromMenuItem = function (item) {
if (item.submenu) {
return includesFromMenuItems(item.submenu.options)
} else {
return item.content === searchElement.content;
}
}
const includes = valuesIncludes.apply(this, arguments) || includesFromMenuItems(this);
return includes;
}
return v;
},
set(v) {
// Options are changing (refresh) so reset the menu so it can be rebuilt if required