diff options
author | simon <none@none> | 2013-08-26 15:45:09 -0700 |
---|---|---|
committer | simon <none@none> | 2013-08-26 15:45:09 -0700 |
commit | 90d1c5b3676fe4e8ea8668b41fdf92613d5f102d (patch) | |
tree | 8d5afd9678fd44444bcc7b5d311b5cfb7abe5217 /indra/newview/llfavoritesbar.cpp | |
parent | ac2dc34ed0abbac8d5a8eb7f887037fe387c6a7a (diff) | |
parent | 27d637d0f14fdfff496256222dc1343d2d7ee9ae (diff) |
Merge downstream code for CHUIStorm
Diffstat (limited to 'indra/newview/llfavoritesbar.cpp')
-rwxr-xr-x | indra/newview/llfavoritesbar.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/indra/newview/llfavoritesbar.cpp b/indra/newview/llfavoritesbar.cpp index 6bd0e5d86f..a2d0759587 100755 --- a/indra/newview/llfavoritesbar.cpp +++ b/indra/newview/llfavoritesbar.cpp @@ -400,6 +400,8 @@ LLFavoritesBarCtrl::LLFavoritesBarCtrl(const LLFavoritesBarCtrl::Params& p) mMoreTextBox->setClickedCallback(boost::bind(&LLFavoritesBarCtrl::showDropDownMenu, this)); addChild(mMoreTextBox); + mDropDownItemsCount = 0; + LLTextBox::Params label_param(p.label); mBarLabel = LLUICtrlFactory::create<LLTextBox> (label_param); addChild(mBarLabel); @@ -829,11 +831,13 @@ void LLFavoritesBarCtrl::updateButtons() } // Update overflow menu LLToggleableMenu* overflow_menu = static_cast <LLToggleableMenu*> (mOverflowMenuHandle.get()); - if (overflow_menu && overflow_menu->getVisible()) + if (overflow_menu && overflow_menu->getVisible() && (overflow_menu->getItemCount() != mDropDownItemsCount)) { overflow_menu->setVisible(FALSE); if (mUpdateDropDownItems) + { showDropDownMenu(); + } } } else @@ -949,6 +953,7 @@ void LLFavoritesBarCtrl::showDropDownMenu() menu->updateParent(LLMenuGL::sMenuContainer); menu->setButtonRect(mMoreTextBox->getRect(), this); positionAndShowMenu(menu); + mDropDownItemsCount = menu->getItemCount(); } } |