Bug 392652, nsXULPopupManager::Rollup should hide popups synchronously, r+sr=bz, a=mconnor

This commit is contained in:
2007-09-18 08:00:43 -07:00
parent 8c34c8f656
commit 825a2cb3fa
6 changed files with 37 additions and 27 deletions

View File

@@ -824,8 +824,11 @@ nsMenuFrame::Enter()
// behavior on Windows - close the popup chain
if (mMenuParent) {
nsXULPopupManager* pm = nsXULPopupManager::GetInstance();
if (pm)
pm->Rollup();
if (pm) {
nsIFrame* popup = pm->GetTopPopup(ePopupTypeAny);
if (popup)
pm->HidePopup(popup->GetContent(), PR_TRUE, PR_TRUE, PR_TRUE);
}
}
#endif // #ifdef XP_WIN
// this menu item was disabled - exit