diff options
author | Loren Shih <seraph@lindenlab.com> | 2010-06-24 19:03:20 -0400 |
---|---|---|
committer | Loren Shih <seraph@lindenlab.com> | 2010-06-24 19:03:20 -0400 |
commit | 9f835b9bce6ac023a9f8b98cfb53015f5d416130 (patch) | |
tree | 28571073482e365e3a9dd618f5e84346db948b77 | |
parent | 1a2a25cb857044d3fa6e80d3edaf5c7a15e167a3 (diff) |
EXT-7902 FIXED Corrupted context menu appears on "Add More" panel if both worn and not-worn items were selected
Added "no options" menu item instead of showing blank context menu.
-rw-r--r-- | indra/newview/llwearableitemslist.cpp | 16 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/menu_wearable_list_item.xml | 6 |
2 files changed, 22 insertions, 0 deletions
diff --git a/indra/newview/llwearableitemslist.cpp b/indra/newview/llwearableitemslist.cpp index da15b93697..b2aac75916 100644 --- a/indra/newview/llwearableitemslist.cpp +++ b/indra/newview/llwearableitemslist.cpp @@ -673,6 +673,8 @@ void LLWearableItemsList::ContextMenu::updateItemsVisibility(LLContextMenu* menu setMenuItemEnabled(menu, "take_off_or_detach", n_worn == n_items); setMenuItemVisible(menu, "object_profile", !standalone); setMenuItemEnabled(menu, "object_profile", n_items == 1); + setMenuItemVisible(menu, "--no options--", FALSE); + setMenuItemEnabled(menu, "--no options--", FALSE); // Populate or hide the "Attach to..." / "Attach to HUD..." submenus. if (mask == MASK_ATTACHMENT && n_worn == 0) @@ -689,6 +691,20 @@ void LLWearableItemsList::ContextMenu::updateItemsVisibility(LLContextMenu* menu { llwarns << "Non-wearable items passed." << llendl; } + + U32 num_visible_items = 0; + for (U32 menu_item_index = 0; menu_item_index < menu->getItemCount(); ++menu_item_index) + { + const LLMenuItemGL* menu_item = menu->getItem(menu_item_index); + if (menu_item && menu_item->getVisible()) + { + num_visible_items++; + } + } + if (num_visible_items == 0) + { + setMenuItemVisible(menu, "--no options--", TRUE); + } } void LLWearableItemsList::ContextMenu::updateItemsLabels(LLContextMenu* menu) 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 efea2ae3e8..23eb89e448 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 @@ -73,4 +73,10 @@ <on_click function="Wearable.CreateNew" /> </menu_item_call> + <menu_item_call + label="--no options--" + layout="topleft" + name="--no options--" + translate="false"> + </menu_item_call> </context_menu> |