when opening submenus, the PopupMenu parent component is not taken into account.
It’s probably just about adding the withParentComponent option in MenuWindow::showSubMenuFor()
:
bool showSubMenuFor (ItemComponent* const childComp)
{
activeSubMenu = nullptr;
if (childComp != nullptr
&& hasActiveSubMenu (childComp->item))
{
activeSubMenu = new HelperClasses::MenuWindow (*(childComp->item.subMenu), this,
options.withTargetScreenArea (childComp->getScreenBounds())
.withMinimumWidth (0)
.withTargetComponent (nullptr)
.withParentComponent (parentComponent),
false, dismissOnMouseUp, managerOfChosenCommand);
activeSubMenu->setVisible (true); // (must be called before enterModalState on Windows to avoid DropShadower confusion)
activeSubMenu->enterModalState (false);
activeSubMenu->toFront (false);
return true;
}
return false;
}