diff options
| author | Loren Shih <seraph@lindenlab.com> | 2010-01-22 14:55:39 -0500 |
|---|---|---|
| committer | Loren Shih <seraph@lindenlab.com> | 2010-01-22 14:55:39 -0500 |
| commit | 3b0ba0c2d7f48a5d1cf2adcbc87c9eaf4d8f6564 (patch) | |
| tree | dc2c080606407dc5f9f2c872d3dd40a465acecf8 /indra/newview/llviewermenu.cpp | |
| parent | 1f896d2d58d9c150d3981f253e81898afa999c2c (diff) | |
| parent | fa891c062ef66410123c66de1ef67b7dcef327db (diff) | |
automated merge viewer2.0->viewer2.0
Diffstat (limited to 'indra/newview/llviewermenu.cpp')
| -rw-r--r-- | indra/newview/llviewermenu.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 3f556e5608..5ff5b82a17 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -6099,7 +6099,8 @@ class LLAttachmentEnableDrop : public view_listener_t LLViewerJointAttachment* attachment = NULL; LLInventoryItem* item = NULL; - if (object) + // Do not enable drop if all faces of object are not enabled + if (object && LLSelectMgr::getInstance()->getSelection()->contains(object,SELECT_ALL_TES )) { S32 attachmentID = ATTACHMENT_ID_FROM_STATE(object->getState()); attachment = get_if_there(gAgent.getAvatarObject()->mAttachmentPoints, attachmentID, (LLViewerJointAttachment*)NULL); @@ -6141,8 +6142,14 @@ class LLAttachmentEnableDrop : public view_listener_t BOOL enable_detach(const LLSD&) { LLViewerObject* object = LLSelectMgr::getInstance()->getSelection()->getPrimaryObject(); - if (!object) return FALSE; - if (!object->isAttachment()) return FALSE; + + // Only enable detach if all faces of object are selected + if (!object || + !object->isAttachment() || + !LLSelectMgr::getInstance()->getSelection()->contains(object,SELECT_ALL_TES )) + { + return FALSE; + } // Find the avatar who owns this attachment LLViewerObject* avatar = object; |
