summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorKent Quirk <q@lindenlab.com>2010-04-12 17:59:22 -0400
committerKent Quirk <q@lindenlab.com>2010-04-12 17:59:22 -0400
commit8a3dca48ebb9d2c48c58187f8e49849c6830737d (patch)
tree2f310864b495ef3817208a9f0984d2d9a544bc4b /indra/newview
parent9572c5ed1b14096ffc31963512a7a6567578ff30 (diff)
parent12e570913cadc1c2abb82306d42f9cd93dd7cba6 (diff)
Merge
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/lltoolpie.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp
index d15db536e6..aa5c99439c 100644
--- a/indra/newview/lltoolpie.cpp
+++ b/indra/newview/lltoolpie.cpp
@@ -496,6 +496,8 @@ void LLToolPie::selectionPropertiesReceived()
BOOL LLToolPie::handleHover(S32 x, S32 y, MASK mask)
{
mHoverPick = gViewerWindow->pickImmediate(x, y, FALSE);
+ // perform a separate pick that detects transparent objects since they respond to 1-click actions
+ LLPickInfo click_action_pick = gViewerWindow->pickImmediate(x, y, TRUE);
// Show screen-space highlight glow effect
bool show_highlight = false;
@@ -507,10 +509,11 @@ BOOL LLToolPie::handleHover(S32 x, S32 y, MASK mask)
parent = object->getRootEdit();
}
- if (object && useClickAction(mask, object, parent))
+ LLViewerObject* click_action_object = click_action_pick.getObject();
+ if (click_action_object && useClickAction(mask, click_action_object, click_action_object->getRootEdit()))
{
show_highlight = true;
- ECursorType cursor = cursor_from_object(object);
+ ECursorType cursor = cursor_from_object(click_action_object);
gViewerWindow->setCursor(cursor);
lldebugst(LLERR_USER_INPUT) << "hover handled by LLToolPie (inactive)" << llendl;
}