isControlOnlyMenu flag changed to hasChildMenu flag. This one matches the early return.

This commit is contained in:
raiti-chan 2022-12-18 19:02:55 +09:00
parent ead1b69856
commit 07b9d2ae7e

View File

@ -121,10 +121,10 @@ namespace nadena.dev.modular_avatar.core.editor
} }
VRCExpressionsMenu[] parentsMenus = parents.DefaultIfEmpty(installer.installTargetMenu).ToArray(); VRCExpressionsMenu[] parentsMenus = parents.DefaultIfEmpty(installer.installTargetMenu).ToArray();
bool isControlOnlyMenu = true; bool hasChildMenu = false;
foreach (KeyValuePair<string, VRCExpressionsMenu> childMenu in childMenus) foreach (KeyValuePair<string, VRCExpressionsMenu> childMenu in childMenus)
{ {
isControlOnlyMenu = false; hasChildMenu = true;
ChildElement childElement = new ChildElement ChildElement childElement = new ChildElement
{ {
menuName = childMenu.Key, menuName = childMenu.Key,
@ -138,17 +138,16 @@ namespace nadena.dev.modular_avatar.core.editor
} }
} }
if (!isControlOnlyMenu) return; if (hasChildMenu) return;
foreach (VRCExpressionsMenu parentMenu in parentsMenus)
{ {
foreach (VRCExpressionsMenu parentMenu in parentsMenus) TraverseMenu(parentMenu, new ChildElement
{ {
TraverseMenu(parentMenu, new ChildElement installer = installer,
{ isInstallerRoot = true
installer = installer, });
isInstallerRoot = true
});
}
} }
} }
private void TraverseMenu(VRCExpressionsMenu parent, ChildElement childElement) private void TraverseMenu(VRCExpressionsMenu parent, ChildElement childElement)