From 3ccb8d6a561c692da7a0001467c3192dd298c1fd Mon Sep 17 00:00:00 2001 From: andreykproductengine Date: Wed, 26 Nov 2014 19:22:31 +0200 Subject: MAINT-1861 FIXED Texture doesn't appear in Inventory after using 'Copy to inventory' button --- indra/newview/llpanelobjectinventory.cpp | 1 + indra/newview/llpreview.cpp | 15 +++++++++++++++ 2 files changed, 16 insertions(+) (limited to 'indra') diff --git a/indra/newview/llpanelobjectinventory.cpp b/indra/newview/llpanelobjectinventory.cpp index 1f16505f71..db944827cd 100755 --- a/indra/newview/llpanelobjectinventory.cpp +++ b/indra/newview/llpanelobjectinventory.cpp @@ -909,6 +909,7 @@ void LLTaskTextureBridge::openItem() LLPreviewTexture* preview = LLFloaterReg::showTypedInstance("preview_texture", LLSD(mUUID), TAKE_FOCUS_YES); if(preview) { + preview->setAuxItem(findItem()); preview->setObjectID(mPanel->getTaskUUID()); } } diff --git a/indra/newview/llpreview.cpp b/indra/newview/llpreview.cpp index cab7eff0dc..bf2652cb49 100755 --- a/indra/newview/llpreview.cpp +++ b/indra/newview/llpreview.cpp @@ -39,6 +39,7 @@ #include "llradiogroup.h" #include "llassetstorage.h" #include "llviewerassettype.h" +#include "llviewermessage.h" #include "llviewerobject.h" #include "llviewerobjectlist.h" #include "lldbstrings.h" @@ -369,6 +370,20 @@ void LLPreview::onBtnCopyToInv(void* userdata) self->mNotecardInventoryID, item); } + else if (self->mObjectUUID.notNull()) + { + // item is in in-world inventory + LLViewerObject* object = gObjectList.findObject(self->mObjectUUID); + LLPermissions perm(item->getPermissions()); + if(object + &&(perm.allowCopyBy(gAgent.getID(), gAgent.getGroupID()) + && perm.allowTransferTo(gAgent.getID()))) + { + // copy to default folder + set_dad_inventory_item(item, LLUUID::null); + object->moveInventory(LLUUID::null, item->getUUID()); + } + } else { LLPointer cb = NULL; -- cgit v1.2.3