summaryrefslogtreecommitdiff
path: root/indra/newview/llsidetray.cpp
diff options
context:
space:
mode:
authorbrad kittenbrink <brad@lindenlab.com>2009-08-05 18:45:18 -0700
committerbrad kittenbrink <brad@lindenlab.com>2009-08-05 18:45:18 -0700
commita8d216e194327c7bee8a42c983f7f2ca01adb385 (patch)
tree76819d6e78c7e7cf0c5e54d319847f4731c77205 /indra/newview/llsidetray.cpp
parent860a82863966435bea680d8541f051e99a6c226c (diff)
parent24d146a9ff26af1f3e4cf5af2c5238ca42e2c6c7 (diff)
Merged in my DEV-35401 "doubleton" fix.
Diffstat (limited to 'indra/newview/llsidetray.cpp')
-rw-r--r--indra/newview/llsidetray.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/indra/newview/llsidetray.cpp b/indra/newview/llsidetray.cpp
index 2688399139..5f0fbe6ee5 100644
--- a/indra/newview/llsidetray.cpp
+++ b/indra/newview/llsidetray.cpp
@@ -44,6 +44,7 @@
#include "llfloater.h" //for gFloaterView
#include "lliconctrl.h"//for Home tab icon
+#include "llsidetraypanelcontainer.h"
#include "llwindow.h"//for SetCursor
//#include "llscrollcontainer.h"
@@ -609,9 +610,22 @@ LLPanel* LLSideTray::showPanel (const std::string& panel_name, const LLSD& para
if(view)
{
onTabButtonClick((*child_it)->getName());
+
+ LLSideTrayPanelContainer* container = dynamic_cast<LLSideTrayPanelContainer*>(view->getParent());
+ if(container)
+ {
+ LLSD new_params = params;
+ new_params[LLSideTrayPanelContainer::PARAM_SUB_PANEL_NAME] = panel_name;
+ container->onOpen(new_params);
+
+ return container->getCurrentPanel();
+ }
+
LLPanel* panel = dynamic_cast<LLPanel*>(view);
if(panel)
+ {
panel->onOpen(params);
+ }
return panel;
}
}