summaryrefslogtreecommitdiff
path: root/indra/newview/llfavoritesbar.cpp
diff options
context:
space:
mode:
authorLeyla Farazha <leyla@lindenlab.com>2010-09-29 16:14:40 -0700
committerLeyla Farazha <leyla@lindenlab.com>2010-09-29 16:14:40 -0700
commit68d769ae8e7d5ba0fbc9c04573f988f3e48e4af0 (patch)
treea9f514f11fd3912036ceafb00b603a5dd717294d /indra/newview/llfavoritesbar.cpp
parent7a43f0983d6906efcea56370e927912461ab898b (diff)
parentcb3042d84d51532c0b6953b69bdc8f9651ea7631 (diff)
Merge
Diffstat (limited to 'indra/newview/llfavoritesbar.cpp')
-rw-r--r--indra/newview/llfavoritesbar.cpp25
1 files changed, 8 insertions, 17 deletions
diff --git a/indra/newview/llfavoritesbar.cpp b/indra/newview/llfavoritesbar.cpp
index dd1f92a25c..3981b887ad 100644
--- a/indra/newview/llfavoritesbar.cpp
+++ b/indra/newview/llfavoritesbar.cpp
@@ -290,20 +290,6 @@ public:
return TRUE;
}
- void setVisible(BOOL b)
- {
- // Overflow menu shouldn't hide when it still has focus. See EXT-4217.
- if (!b && hasFocus())
- return;
- LLToggleableMenu::setVisible(b);
- setFocus(b);
- }
-
- void onFocusLost()
- {
- setVisible(FALSE);
- }
-
protected:
LLFavoriteLandmarkToggleableMenu(const LLToggleableMenu::Params& p):
LLToggleableMenu(p)
@@ -790,7 +776,6 @@ void LLFavoritesBarCtrl::updateButtons()
LLToggleableMenu* overflow_menu = static_cast <LLToggleableMenu*> (mPopupMenuHandle.get());
if (overflow_menu && overflow_menu->getVisible())
{
- overflow_menu->setFocus(FALSE);
overflow_menu->setVisible(FALSE);
if (mUpdateDropDownItems)
showDropDownMenu();
@@ -911,8 +896,6 @@ void LLFavoritesBarCtrl::showDropDownMenu()
if (menu)
{
- // Release focus to allow changing of visibility.
- menu->setFocus(FALSE);
if (!menu->toggleVisibility())
return;
@@ -1093,6 +1076,14 @@ void LLFavoritesBarCtrl::doToSelected(const LLSD& userdata)
{
gInventory.removeItem(mSelectedItemID);
}
+
+ // Pop-up the overflow menu again (it gets hidden whenever the user clicks a context menu item).
+ // See EXT-4217 and STORM-207.
+ LLToggleableMenu* menu = (LLToggleableMenu*) mPopupMenuHandle.get();
+ if (menu && !menu->getVisible())
+ {
+ showDropDownMenu();
+ }
}
BOOL LLFavoritesBarCtrl::isClipboardPasteable() const