From 92b104f4168588985b4c9c66d24e8f67f2b6e49e Mon Sep 17 00:00:00 2001
From: "Nyx (Neal Orman)" <nyx@lindenlab.com>
Date: Fri, 4 Jun 2010 18:43:13 -0400
Subject: [PATCH] VWR-19699 Correct "wear" and "add" behavior

added "add" menu item to clothing right-click menus and corrected
"wear" to mean "replace top wearable of this type"

reviewed by Richard
---
 indra/newview/llwearableitemslist.cpp                      | 4 +++-
 .../skins/default/xui/en/menu_wearable_list_item.xml       | 7 +++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/indra/newview/llwearableitemslist.cpp b/indra/newview/llwearableitemslist.cpp
index ba1d0b727d4..6c4774ba5a2 100644
--- a/indra/newview/llwearableitemslist.cpp
+++ b/indra/newview/llwearableitemslist.cpp
@@ -508,11 +508,13 @@ LLContextMenu* LLWearableItemsList::ContextMenu::createMenu()
 	const uuid_vec_t& ids = mUUIDs;		// selected items IDs
 	LLUUID selected_id = ids.front();	// ID of the first selected item
 
-	functor_t wear = boost::bind(&LLAppearanceMgr::wearItemOnAvatar, LLAppearanceMgr::getInstance(), _1, true, false);
+	functor_t wear = boost::bind(&LLAppearanceMgr::wearItemOnAvatar, LLAppearanceMgr::getInstance(), _1, true, true);
+	functor_t add = boost::bind(&LLAppearanceMgr::wearItemOnAvatar, LLAppearanceMgr::getInstance(), _1, true, false);
 	functor_t take_off = boost::bind(&LLAppearanceMgr::removeItemFromAvatar, LLAppearanceMgr::getInstance(), _1);
 
 	// Register handlers common for all wearable types.
 	registrar.add("Wearable.Wear", boost::bind(handleMultiple, wear, ids));
+	registrar.add("Wearable.Add", boost::bind(handleMultiple, add, ids));
 	registrar.add("Wearable.Edit", boost::bind(handleMultiple, LLAgentWearables::editWearable, ids));
 	registrar.add("Wearable.CreateNew", boost::bind(createNewWearable, selected_id));
 	registrar.add("Wearable.ShowOriginal", boost::bind(show_item_original, selected_id));
diff --git a/indra/newview/skins/default/xui/en/menu_wearable_list_item.xml b/indra/newview/skins/default/xui/en/menu_wearable_list_item.xml
index e645702f93e..fa5ca60a192 100644
--- a/indra/newview/skins/default/xui/en/menu_wearable_list_item.xml
+++ b/indra/newview/skins/default/xui/en/menu_wearable_list_item.xml
@@ -8,6 +8,13 @@
         <on_click
          function="Wearable.Wear" />
     </menu_item_call>
+    <menu_item_call
+     label="Add"
+     layout="topleft"
+     name="wear_add">
+        <on_click
+         function="Wearable.Add" />
+    </menu_item_call>
     <menu_item_call
      label="Take Off / Detach"
      layout="topleft"
-- 
GitLab