summaryrefslogtreecommitdiff
path: root/indra/newview/llsidetray.cpp
diff options
context:
space:
mode:
authorMerov Linden <merov@lindenlab.com>2010-10-11 18:30:22 -0700
committerMerov Linden <merov@lindenlab.com>2010-10-11 18:30:22 -0700
commita8fbfa40ba6153668e1f713ae0e128224b4f400f (patch)
treebc2210d3055fa2ee14da52a64f6f0cb478f80c60 /indra/newview/llsidetray.cpp
parent48c2b2496d3ed6aeeebb0bc8950725f8ef7e305f (diff)
parent418cb8689f54def3377369842b3635ad28013374 (diff)
pull viewer-beta into viewer-development
Diffstat (limited to 'indra/newview/llsidetray.cpp')
-rw-r--r--indra/newview/llsidetray.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/indra/newview/llsidetray.cpp b/indra/newview/llsidetray.cpp
index 71f3b0e491..81b2fc0ae0 100644
--- a/indra/newview/llsidetray.cpp
+++ b/indra/newview/llsidetray.cpp
@@ -51,6 +51,8 @@
#include "llwindow.h"//for SetCursor
#include "lltransientfloatermgr.h"
+#include "llsidepanelappearance.h"
+
//#include "llscrollcontainer.h"
using namespace std;
@@ -292,6 +294,13 @@ void LLSideTrayTab::dock()
}
}
+static void on_minimize(LLSidepanelAppearance* panel, LLSD minimized)
+{
+ if (!panel) return;
+ bool visible = !minimized.asBoolean();
+ panel->updateToVisibility(LLSD(visible));
+}
+
void LLSideTrayTab::undock(LLFloater* floater_tab)
{
LLSideTray* side_tray = getSideTray();
@@ -353,6 +362,17 @@ void LLSideTrayTab::undock(LLFloater* floater_tab)
// Set FOLLOWS_ALL flag for the tab to follow floater dimensions upon resizing.
setFollowsAll();
+ // Camera view may need to be changed for appearance panel(STORM-301) on minimize of floater,
+ // so setting callback here.
+ if (getName() == "sidebar_appearance")
+ {
+ LLSidepanelAppearance* panel_appearance = dynamic_cast<LLSidepanelAppearance*>(getPanel());
+ if(panel_appearance)
+ {
+ floater_tab->setMinimizeCallback(boost::bind(&on_minimize, panel_appearance, _2));
+ }
+ }
+
if (!side_tray->getCollapsed())
{
side_tray->collapseSideBar();