diff --git a/indra/newview/llpanelwearing.cpp b/indra/newview/llpanelwearing.cpp
index 3099a6e0391b53c7cb2f423f606c01188523e368..75c8765c5b3507487bfef2752f44be60d083802a 100644
--- a/indra/newview/llpanelwearing.cpp
+++ b/indra/newview/llpanelwearing.cpp
@@ -65,7 +65,7 @@ class LLWearingGearMenu
 		LLUICtrl::EnableCallbackRegistry::ScopedRegistrar enable_registrar;
 
 		registrar.add("Gear.Edit", boost::bind(&edit_outfit));
-		registrar.add("Gear.TakeOff", boost::bind(&LLWearingGearMenu::onTakeOff, this));
+		registrar.add("Gear.TakeOff", boost::bind(&LLPanelWearing::onRemoveItem, mPanelWearing));
 		registrar.add("Gear.Copy", boost::bind(&LLPanelWearing::copyToClipboard, mPanelWearing));
 
 		enable_registrar.add("Gear.OnEnable", boost::bind(&LLPanelWearing::isActionEnabled, mPanelWearing, _2));
@@ -79,13 +79,6 @@ class LLWearingGearMenu
 
 private:
 
-	void onTakeOff()
-	{
-		uuid_vec_t selected_uuids;
-		mPanelWearing->getSelectedItemsUUIDs(selected_uuids);
-		LLAppearanceMgr::instance().removeItemsFromAvatar(selected_uuids);
-	}
-
 	LLToggleableMenu*		mMenu;
 	LLPanelWearing* 		mPanelWearing;
 };
@@ -343,7 +336,14 @@ bool LLPanelWearing::isActionEnabled(const LLSD& userdata)
 
 	if (command_name == "take_off")
 	{
-		return hasItemSelected() && canTakeOffSelected();
+		if (mWearablesTab->isExpanded())
+		{
+			return hasItemSelected() && canTakeOffSelected();
+		}
+		else
+		{
+			return mTempItemsList->hasSelectedItem();
+		}
 	}
 
 	return false;
@@ -532,6 +532,21 @@ void LLPanelWearing::onRemoveAttachment()
 	}
 }
 
+void LLPanelWearing::onRemoveItem()
+{
+	if (mWearablesTab->isExpanded())
+	{
+		uuid_vec_t selected_uuids;
+		getSelectedItemsUUIDs(selected_uuids);
+		LLAppearanceMgr::instance().removeItemsFromAvatar(selected_uuids);
+	}
+	else
+	{
+		onRemoveAttachment();
+	}
+}
+
+
 void LLPanelWearing::copyToClipboard()
 {
 	std::string text;
diff --git a/indra/newview/llpanelwearing.h b/indra/newview/llpanelwearing.h
index c5cb79092ad5aee9c15b50c3369ab68c7431f6bb..715404a457db9b92a0977d7847e0379bbf6a98ab 100644
--- a/indra/newview/llpanelwearing.h
+++ b/indra/newview/llpanelwearing.h
@@ -80,6 +80,7 @@ class LLPanelWearing : public LLPanelAppearanceTab
 	void onAccordionTabStateChanged();
 	void setAttachmentDetails(LLSD content);
 	void requestAttachmentDetails();
+	void onRemoveItem();
 	void onEditAttachment();
 	void onRemoveAttachment();