diff options
author | Richard Nelson <none@none> | 2010-03-26 16:57:56 -0700 |
---|---|---|
committer | Richard Nelson <none@none> | 2010-03-26 16:57:56 -0700 |
commit | 12e570913cadc1c2abb82306d42f9cd93dd7cba6 (patch) | |
tree | 0f479f085bb12e7f8f93584d508cfe0e8a46f4ae | |
parent | 2e47e6d816f08bf75ed7dd06230996cfa606a737 (diff) |
EXT-EXT-6317 - cursor does not indicate clicking will trigger an action when over transparent objects
reviewed by Leyla
(transplanted from 4b90aa824b05ef6d29973b55bec8eb6210e1edf9)
-rw-r--r-- | indra/newview/lltoolpie.cpp | 7 |
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; } |