diff options
author | Leyla Farazha <leyla@lindenlab.com> | 2010-04-08 16:03:37 -0700 |
---|---|---|
committer | Leyla Farazha <leyla@lindenlab.com> | 2010-04-08 16:03:37 -0700 |
commit | a0ad3ea4fa1e37c737df9f78c4753217efc58531 (patch) | |
tree | bc50de7b8170fbaa6e989f134547fd5ce24a882e /indra/newview | |
parent | 89fad5ded4b5e78bf83f5c9817cb5220703883bc (diff) |
EXT-6503 Setting a "click to" action in the Build tool breaks Shared Media interaction
reviewed by richard cc#182
Diffstat (limited to 'indra/newview')
-rw-r--r-- | indra/newview/lltoolpie.cpp | 31 |
1 files changed, 15 insertions, 16 deletions
diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp index 84c463495b..a9bbee784d 100644 --- a/indra/newview/lltoolpie.cpp +++ b/indra/newview/lltoolpie.cpp @@ -181,10 +181,10 @@ BOOL LLToolPie::pickLeftMouseDownCallback() parent = object->getRootEdit(); } - - BOOL touchable = (object && object->flagHandleTouch()) - || (parent && parent->flagHandleTouch()); - + if (handleMediaClick(mPick)) + { + return TRUE; + } // If it's a left-click, and we have a special action, do it. if (useClickAction(mask, object, parent)) @@ -286,14 +286,12 @@ BOOL LLToolPie::pickLeftMouseDownCallback() } } - if (handleMediaClick(mPick)) - { - return TRUE; - } - // put focus back "in world" gFocusMgr.setKeyboardFocus(NULL); + BOOL touchable = (object && object->flagHandleTouch()) + || (parent && parent->flagHandleTouch()); + // Switch to grab tool if physical or triggerable if (object && !object->isAvatar() && @@ -513,21 +511,22 @@ BOOL LLToolPie::handleHover(S32 x, S32 y, MASK mask) } LLViewerObject* click_action_object = click_action_pick.getObject(); - if (click_action_object && useClickAction(mask, click_action_object, click_action_object->getRootEdit())) + if (handleMediaHover(mHoverPick)) { + // *NOTE: If you think the hover glow conflicts with the media outline, you + // could disable it here. show_highlight = true; - ECursorType cursor = cursor_from_object(click_action_object); - gViewerWindow->setCursor(cursor); + // cursor set by media object lldebugst(LLERR_USER_INPUT) << "hover handled by LLToolPie (inactive)" << llendl; } - else if (handleMediaHover(mHoverPick)) + else if (click_action_object && useClickAction(mask, click_action_object, click_action_object->getRootEdit())) { - // *NOTE: If you think the hover glow conflicts with the media outline, you - // could disable it here. show_highlight = true; - // cursor set by media object + ECursorType cursor = cursor_from_object(click_action_object); + gViewerWindow->setCursor(cursor); lldebugst(LLERR_USER_INPUT) << "hover handled by LLToolPie (inactive)" << llendl; } + else if ((object && !object->isAvatar() && object->usePhysics()) || (parent && !parent->isAvatar() && parent->usePhysics())) { |