summaryrefslogtreecommitdiff
path: root/indra/llui/llmenugl.cpp
diff options
context:
space:
mode:
authorSteven Bennetts <steve@lindenlab.com>2007-01-17 23:02:00 +0000
committerSteven Bennetts <steve@lindenlab.com>2007-01-17 23:02:00 +0000
commit71d28bdbf0baab9302c8f458e3bdbcfc60d656d4 (patch)
tree19f051897838d5a75e5ce1e776bb52a330173171 /indra/llui/llmenugl.cpp
parentfc664e93e62645fc6e9659664351e77f3c4b374f (diff)
merge release@56803 release-candidate@56833
Diffstat (limited to 'indra/llui/llmenugl.cpp')
-rw-r--r--indra/llui/llmenugl.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/indra/llui/llmenugl.cpp b/indra/llui/llmenugl.cpp
index 8607d1d752..7d2df53f9b 100644
--- a/indra/llui/llmenugl.cpp
+++ b/indra/llui/llmenugl.cpp
@@ -385,7 +385,12 @@ void LLMenuItemGL::doIt( void )
{
// close all open menus by default
// if parent menu is actually visible (and we are not triggering menu item via accelerator)
- if (!getMenu()->getTornOff() && getMenu()->getVisible())
+ // HACK: do not call hidemenus() from a pie menu item, as most pie menu operations
+ // assume that the thing you clicked on stays selected (parcel and/or object) after the
+ // pie menu is gone --RN
+ if (getMenu()->getWidgetType() != WIDGET_TYPE_PIE_MENU
+ && !getMenu()->getTornOff()
+ && getMenu()->getVisible())
{
((LLMenuHolderGL*)getMenu()->getParent())->hideMenus();
}
@@ -4103,6 +4108,11 @@ BOOL LLMenuBarGL::handleKeyHere(KEY key, MASK mask, BOOL called_from_parent)
{
mAltKeyTrigger = TRUE;
}
+ else // if any key other than ALT hit, clear out waiting for Alt key mode
+ {
+ mAltKeyTrigger = FALSE;
+ }
+
// before processing any other key, check to see if ALT key has triggered menu access
checkMenuTrigger();