From 185915aeede50dec00822c336537a335404252ed Mon Sep 17 00:00:00 2001 From: Rider Linden Date: Fri, 24 Aug 2018 14:25:31 -0700 Subject: Finish dirty and close warning for fixed environment editors. --- indra/newview/llfloaterfixedenvironment.cpp | 11 +++++++---- indra/newview/llfloaterfixedenvironment.h | 3 ++- indra/newview/llviewerassetupload.cpp | 4 ++++ 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/indra/newview/llfloaterfixedenvironment.cpp b/indra/newview/llfloaterfixedenvironment.cpp index 915bc687d8..cbc41f724e 100644 --- a/indra/newview/llfloaterfixedenvironment.cpp +++ b/indra/newview/llfloaterfixedenvironment.cpp @@ -105,7 +105,7 @@ BOOL LLFloaterFixedEnvironment::postBuild() mTxtName->setCommitCallback([this](LLUICtrl *, const LLSD &) { onNameChanged(mTxtName->getValue().asString()); }); getChild(BUTTON_NAME_IMPORT)->setClickedCallback([this](LLUICtrl *, const LLSD &) { onButtonImport(); }); - getChild(BUTTON_NAME_CANCEL)->setClickedCallback([this](LLUICtrl *, const LLSD &) { onButtonCancel(); }); + getChild(BUTTON_NAME_CANCEL)->setClickedCallback([this](LLUICtrl *, const LLSD &) { onClickCloseBtn(); }); getChild(BUTTON_NAME_LOAD)->setClickedCallback([this](LLUICtrl *, const LLSD &) { onButtonLoad(); }); mFlyoutControl = new LLFlyoutComboBtnCtrl(this, BUTTON_NAME_COMMIT, BUTTON_NAME_FLYOUT, XML_FLYOUTMENU_FILE); @@ -334,9 +334,12 @@ void LLFloaterFixedEnvironment::onButtonApply(LLUICtrl *ctrl, const LLSD &data) } } -void LLFloaterFixedEnvironment::onButtonCancel() +void LLFloaterFixedEnvironment::onClickCloseBtn(bool app_quitting) { - checkAndConfirmSettingsLoss([this](){ closeFloater(); }); + if (!app_quitting) + checkAndConfirmSettingsLoss([this](){ closeFloater(); }); + else + closeFloater(); } void LLFloaterFixedEnvironment::onButtonLoad() @@ -558,7 +561,7 @@ void LLFloaterFixedEnvironmentWater::doImportFromDisk() return; } - clearDirtyFlag(); + setDirtyFlag(); LLEnvironment::instance().setEnvironment(LLEnvironment::ENV_EDIT, legacywater); setEditSettings(legacywater); LLEnvironment::instance().updateEnvironment(LLEnvironment::TRANSITION_FAST, true); diff --git a/indra/newview/llfloaterfixedenvironment.h b/indra/newview/llfloaterfixedenvironment.h index 85a9ba0141..50b229e0c4 100644 --- a/indra/newview/llfloaterfixedenvironment.h +++ b/indra/newview/llfloaterfixedenvironment.h @@ -108,12 +108,13 @@ protected: void doSelectFromInventory(); void onPanelDirtyFlagChanged(bool); + virtual void onClickCloseBtn(bool app_quitting = false) override; + private: void onNameChanged(const std::string &name); void onButtonImport(); void onButtonApply(LLUICtrl *ctrl, const LLSD &data); - void onButtonCancel(); void onButtonLoad(); void onPickerCommitSetting(LLUUID asset_id); diff --git a/indra/newview/llviewerassetupload.cpp b/indra/newview/llviewerassetupload.cpp index 555768615a..6a81c312d3 100644 --- a/indra/newview/llviewerassetupload.cpp +++ b/indra/newview/llviewerassetupload.cpp @@ -735,6 +735,10 @@ void LLViewerAssetUpload::AssetInventoryUploadCoproc(LLCoreHttpUtil::HttpCorouti LLUploadDialog::modalUploadFinished(); return; } + if (!result.has("success")) + { + result["success"] = LLSD::Boolean((ulstate == "complete") && status); + } S32 uploadPrice = result["upload_price"].asInteger();//uploadInfo->getEconomyUploadCost(); -- cgit v1.2.3