From fe9a705709cbd5391ba67bdf3e3b33d2eb95dd29 Mon Sep 17 00:00:00 2001 From: Loren Shih Date: Tue, 1 Dec 2009 12:41:13 -0500 Subject: EXT-2922 : 2nd inventroy shouldn't list "New Window" as an option, since it silently fails Fixed the behavior so that New Window brings up a new floater inventory window instead of doing nothing. --HG-- branch : avatar-pipeline --- indra/newview/llfloaterinventory.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'indra/newview/llfloaterinventory.cpp') diff --git a/indra/newview/llfloaterinventory.cpp b/indra/newview/llfloaterinventory.cpp index db38fc0fb3..4a2e1913cd 100644 --- a/indra/newview/llfloaterinventory.cpp +++ b/indra/newview/llfloaterinventory.cpp @@ -107,10 +107,14 @@ LLInventoryPanel* LLFloaterInventory::getPanel() // static LLFloaterInventory* LLFloaterInventory::showAgentInventory() { + // Hack to generate semi-unique key for each inventory floater. + static S32 instance_num = 0; + instance_num = (instance_num + 1) % S32_MAX; + LLFloaterInventory* iv = NULL; if (!gAgent.cameraMouselook()) { - iv = LLFloaterReg::showTypedInstance("inventory", LLSD()); + iv = LLFloaterReg::showTypedInstance("inventory", LLSD(instance_num)); } return iv; } -- cgit v1.2.3 From 8fdd2e0b28121ead88da55c2be760a5f62b6d112 Mon Sep 17 00:00:00 2001 From: Loren Shih Date: Tue, 1 Dec 2009 21:12:34 -0500 Subject: EXT-3028 : "Find Original" does nothing if floater inventory isn't open Changed logic for getActiveInventory so that it considers InventorySP. Removed getActiveInventory and replaced with getActiveInventoryPanel since that follows its current usage. This currently contains a bug because the InventorySP always thinks it's open. --HG-- branch : avatar-pipeline --- indra/newview/llfloaterinventory.cpp | 22 ---------------------- 1 file changed, 22 deletions(-) (limited to 'indra/newview/llfloaterinventory.cpp') diff --git a/indra/newview/llfloaterinventory.cpp b/indra/newview/llfloaterinventory.cpp index 4a2e1913cd..76c0a7637c 100644 --- a/indra/newview/llfloaterinventory.cpp +++ b/indra/newview/llfloaterinventory.cpp @@ -119,28 +119,6 @@ LLFloaterInventory* LLFloaterInventory::showAgentInventory() return iv; } -// static -LLFloaterInventory* LLFloaterInventory::getActiveInventory() -{ - LLFloaterInventory* res = NULL; - LLFloaterReg::const_instance_list_t& inst_list = LLFloaterReg::getFloaterList("inventory"); - S32 z_min = S32_MAX; - for (LLFloaterReg::const_instance_list_t::const_iterator iter = inst_list.begin(); iter != inst_list.end(); ++iter) - { - LLFloaterInventory* iv = dynamic_cast(*iter); - if (iv) - { - S32 z_order = gFloaterView->getZOrder(iv); - if (z_order < z_min) - { - res = iv; - z_min = z_order; - } - } - } - return res; -} - // static void LLFloaterInventory::cleanup() { -- cgit v1.2.3