summaryrefslogtreecommitdiff
path: root/indra/newview/llfloatersellland.cpp
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2009-09-30 21:44:20 -0400
committerNat Goodspeed <nat@lindenlab.com>2009-09-30 21:44:20 -0400
commit57969e41db06cbc5c0f9ffdeafb7c21e55b2731d (patch)
treeea54edd04380696ef3f83671204fdae2f7ae298e /indra/newview/llfloatersellland.cpp
parentc4c537e957458650a2948ffbd3a787f007d87f7a (diff)
parenteca30a22626b9a3e68e0e55f8da75614cd60d713 (diff)
Automated merge with ssh://hg.lindenlab.com/viewer/login-api/
Diffstat (limited to 'indra/newview/llfloatersellland.cpp')
-rw-r--r--indra/newview/llfloatersellland.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/indra/newview/llfloatersellland.cpp b/indra/newview/llfloatersellland.cpp
index a6aa01e83b..fe98c84301 100644
--- a/indra/newview/llfloatersellland.cpp
+++ b/indra/newview/llfloatersellland.cpp
@@ -58,6 +58,7 @@ class LLFloaterSellLandUI
public:
LLFloaterSellLandUI(const LLSD& key);
virtual ~LLFloaterSellLandUI();
+ void onClose();
private:
class SelectionObserver : public LLParcelObserver
@@ -131,6 +132,7 @@ LLFloaterSellLandUI::LLFloaterSellLandUI(const LLSD& key)
{
LLViewerParcelMgr::getInstance()->addObserver(&mParcelSelectionObserver);
// LLUICtrlFactory::getInstance()->buildFloater(sInstance, "floater_sell_land.xml");
+ mCloseSignal.connect(boost::bind(&LLFloaterSellLandUI::onClose, this));
}
LLFloaterSellLandUI::~LLFloaterSellLandUI()
@@ -138,6 +140,13 @@ LLFloaterSellLandUI::~LLFloaterSellLandUI()
LLViewerParcelMgr::getInstance()->removeObserver(&mParcelSelectionObserver);
}
+// Because we are single_instance, we are not destroyed on close.
+void LLFloaterSellLandUI::onClose()
+{
+ // Must release parcel selection to allow land to deselect, see EXT-803
+ mParcelSelection = NULL;
+}
+
void LLFloaterSellLandUI::SelectionObserver::changed()
{
if (LLViewerParcelMgr::getInstance()->selectionEmpty())
@@ -253,10 +262,7 @@ void LLFloaterSellLandUI::refreshUI()
if (!parcelp) return;
LLTextureCtrl* snapshot = getChild<LLTextureCtrl>("info_image");
- if (snapshot)
- {
- snapshot->setImageAssetID(mParcelSnapshot);
- }
+ snapshot->setImageAssetID(mParcelSnapshot);
childSetText("info_parcel", parcelp->getName());
childSetTextArg("info_size", "[AREA]", llformat("%d", mParcelActualArea));