summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorAustin Doupnik <austin@lindenlab.com>2009-07-09 22:35:39 +0000
committerAustin Doupnik <austin@lindenlab.com>2009-07-09 22:35:39 +0000
commitb742355130decb1b39d6f95871d4fb575cdd3d65 (patch)
tree22d416f202bae948abbe7110ae4b08f65930674c /indra
parentee24bbdd482f4d183b92221ebef15d9555860534 (diff)
DEV-35167 Reference counted selection objects were being kept around by floaters that were being constructed, but weren't visible. Reviewed by Richard.
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llfloaterinspect.cpp3
-rw-r--r--indra/newview/llfloateropenobject.cpp2
-rw-r--r--indra/newview/llfloatertelehub.cpp6
-rw-r--r--indra/newview/llfloatertelehub.h1
-rw-r--r--indra/newview/llviewerwindow.cpp8
5 files changed, 12 insertions, 8 deletions
diff --git a/indra/newview/llfloaterinspect.cpp b/indra/newview/llfloaterinspect.cpp
index 9f8446210e..972b3b9528 100644
--- a/indra/newview/llfloaterinspect.cpp
+++ b/indra/newview/llfloaterinspect.cpp
@@ -66,7 +66,6 @@ BOOL LLFloaterInspect::postBuild()
// childSetAction("button creator",onClickCreatorProfile, this);
// childSetCommitCallback("object_list", onSelectObject, NULL);
- mObjectSelection = LLSelectMgr::getInstance()->getSelection();
refresh();
return TRUE;
@@ -120,6 +119,8 @@ void LLFloaterInspect::onOpen(const LLSD& key)
BOOL forcesel = LLSelectMgr::getInstance()->setForceSelection(TRUE);
LLToolMgr::getInstance()->setTransientTool(LLToolCompInspect::getInstance());
LLSelectMgr::getInstance()->setForceSelection(forcesel); // restore previouis value
+ mObjectSelection = LLSelectMgr::getInstance()->getSelection();
+ refresh();
}
void LLFloaterInspect::onClickCreatorProfile()
{
diff --git a/indra/newview/llfloateropenobject.cpp b/indra/newview/llfloateropenobject.cpp
index 09460e41ad..ba23a58b37 100644
--- a/indra/newview/llfloateropenobject.cpp
+++ b/indra/newview/llfloateropenobject.cpp
@@ -74,7 +74,6 @@ LLFloaterOpenObject::~LLFloaterOpenObject()
// virtual
BOOL LLFloaterOpenObject::postBuild()
{
- mObjectSelection = LLSelectMgr::getInstance()->getEditSelection();
childSetTextArg("object_name", "[DESC]", std::string("Object") ); // *Note: probably do not want to translate this
mPanelInventory = getChild<LLPanelInventory>("object_contents");
return TRUE;
@@ -94,6 +93,7 @@ void LLFloaterOpenObject::onOpen(const LLSD& key)
closeFloater();
return;
}
+ mObjectSelection = LLSelectMgr::getInstance()->getEditSelection();
}
void LLFloaterOpenObject::refresh()
{
diff --git a/indra/newview/llfloatertelehub.cpp b/indra/newview/llfloatertelehub.cpp
index 1d2d3b98f2..174350ddf4 100644
--- a/indra/newview/llfloatertelehub.cpp
+++ b/indra/newview/llfloatertelehub.cpp
@@ -93,8 +93,6 @@ LLFloaterTelehub::LLFloaterTelehub()
gMessageSystem->setHandlerFunc("TelehubInfo", processTelehubInfo);
LLUICtrlFactory::getInstance()->buildFloater(sInstance, "floater_telehub.xml");
-
- mObjectSelection = LLSelectMgr::getInstance()->getEditSelection();
}
BOOL LLFloaterTelehub::postBuild()
{
@@ -113,6 +111,10 @@ BOOL LLFloaterTelehub::postBuild()
return TRUE;
}
+void LLFloaterTelehub::onOpen(const LLSD& key)
+{
+ mObjectSelection = LLSelectMgr::getInstance()->getEditSelection();
+}
LLFloaterTelehub::~LLFloaterTelehub()
{
sInstance = NULL;
diff --git a/indra/newview/llfloatertelehub.h b/indra/newview/llfloatertelehub.h
index b639338dfc..86749dcc0b 100644
--- a/indra/newview/llfloatertelehub.h
+++ b/indra/newview/llfloatertelehub.h
@@ -49,6 +49,7 @@ public:
virtual void draw();
/*virtual*/ BOOL postBuild();
+ void onOpen(const LLSD& key);
static BOOL renderBeacons();
static void addBeacons();
diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp
index e690ae5f6f..1ee5877085 100644
--- a/indra/newview/llviewerwindow.cpp
+++ b/indra/newview/llviewerwindow.cpp
@@ -2868,10 +2868,10 @@ void LLViewerWindow::updateKeyboardFocus()
}
// last ditch force of edit menu to selection manager
- if (LLEditMenuHandler::gEditMenuHandler == NULL && LLSelectMgr::getInstance()->getSelection()->getObjectCount())
- {
- LLEditMenuHandler::gEditMenuHandler = LLSelectMgr::getInstance();
- }
+// if (LLEditMenuHandler::gEditMenuHandler == NULL && LLSelectMgr::getInstance()->getSelection()->getObjectCount())
+// {
+// LLEditMenuHandler::gEditMenuHandler = LLSelectMgr::getInstance();
+// }
if (gFloaterView->getCycleMode())
{