Avoid calling BMenu::_hide() when not needed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13401 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1523,20 +1523,23 @@ BMenu::Uninstall()
|
|||||||
void
|
void
|
||||||
BMenu::SelectItem(BMenuItem *menuItem, uint32 showSubmenu, bool selectFirstItem)
|
BMenu::SelectItem(BMenuItem *menuItem, uint32 showSubmenu, bool selectFirstItem)
|
||||||
{
|
{
|
||||||
// TODO: make use of "selectFirstItem".
|
// TODO: make use of "selectFirstItem"
|
||||||
if (fSelected != NULL) {
|
if (fSelected != NULL) {
|
||||||
fSelected->Select(false);
|
fSelected->Select(false);
|
||||||
if (fSelected->Submenu() != NULL)
|
BMenu *subMenu = fSelected->Submenu();
|
||||||
fSelected->Submenu()->_hide();
|
if (subMenu != NULL && subMenu->Window() != NULL)
|
||||||
|
subMenu->_hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (menuItem != NULL)
|
if (menuItem != NULL)
|
||||||
menuItem->Select(true);
|
menuItem->Select(true);
|
||||||
|
|
||||||
fSelected = menuItem;
|
fSelected = menuItem;
|
||||||
if (fSelected != NULL && showSubmenu == 0 && fSelected->Submenu() != NULL)
|
if (fSelected != NULL && showSubmenu == 0) {
|
||||||
fSelected->Submenu()->_show();
|
BMenu *subMenu = fSelected->Submenu();
|
||||||
|
if (subMenu != NULL && subMenu->Window() == NULL)
|
||||||
|
subMenu->_show();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user