diff options
author | Graham Linden <graham@lindenlab.com> | 2018-08-15 21:34:06 +0100 |
---|---|---|
committer | Graham Linden <graham@lindenlab.com> | 2018-08-15 21:34:06 +0100 |
commit | c5b0d4ccd074b7062e5100c3b021da53170eb30c (patch) | |
tree | 6600bff8fd4d7f8af3f8d7929c511fbe3d6dc533 /indra/newview/llfloatereditextdaycycle.cpp | |
parent | ec0fe8078c1f64c1579f382a686282ddbb82f470 (diff) | |
parent | f028ddd0754d5a2fd2f2300aa02eff4fe6cfa96f (diff) |
Merge
Diffstat (limited to 'indra/newview/llfloatereditextdaycycle.cpp')
-rw-r--r-- | indra/newview/llfloatereditextdaycycle.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/indra/newview/llfloatereditextdaycycle.cpp b/indra/newview/llfloatereditextdaycycle.cpp index 165971b943..958329d7e1 100644 --- a/indra/newview/llfloatereditextdaycycle.cpp +++ b/indra/newview/llfloatereditextdaycycle.cpp @@ -919,10 +919,10 @@ void LLFloaterEditExtDayCycle::onAssetLoaded(LLUUID asset_id, LLSettingsBase::pt closeFloater(); return; } - mEditDay = std::dynamic_pointer_cast<LLSettingsDay>(settings); + mEditDay = std::dynamic_pointer_cast<LLSettingsDay>(settings)->buildDeepCloneAndUncompress(); updateEditEnvironment(); LLEnvironment::instance().setSelectedEnvironment(LLEnvironment::ENV_EDIT, LLEnvironment::TRANSITION_INSTANT); - LLEnvironment::instance().updateEnvironment(); + LLEnvironment::instance().updateEnvironment(LLEnvironment::TRANSITION_INSTANT); synchronizeTabs(); updateTabs(); refresh(); @@ -936,7 +936,7 @@ void LLFloaterEditExtDayCycle::loadLiveEnvironment(LLEnvironment::EnvSelection_t if (day) { - mEditDay = day->buildClone(); + mEditDay = day->buildDeepCloneAndUncompress(); break; } } @@ -949,7 +949,7 @@ void LLFloaterEditExtDayCycle::loadLiveEnvironment(LLEnvironment::EnvSelection_t updateEditEnvironment(); LLEnvironment::instance().setSelectedEnvironment(LLEnvironment::ENV_EDIT, LLEnvironment::TRANSITION_INSTANT); - LLEnvironment::instance().updateEnvironment(); + LLEnvironment::instance().updateEnvironment(LLEnvironment::TRANSITION_INSTANT); synchronizeTabs(); updateTabs(); refresh(); @@ -974,7 +974,8 @@ void LLFloaterEditExtDayCycle::updateEditEnvironment(void) reblendSettings(); - LLEnvironment::instance().setEnvironment(LLEnvironment::ENV_EDIT, mScratchSky, mScratchWater); + LLEnvironment::instance().setEnvironment(LLEnvironment::ENV_EDIT, mEditSky, mEditWater); + LLEnvironment::instance().updateEnvironment(LLEnvironment::TRANSITION_INSTANT); } void LLFloaterEditExtDayCycle::synchronizeTabs() @@ -1007,6 +1008,7 @@ void LLFloaterEditExtDayCycle::synchronizeTabs() { psettingW = mScratchWater; } + mEditWater = psettingW; setTabsData(tabs, psettingW, canedit); @@ -1035,11 +1037,13 @@ void LLFloaterEditExtDayCycle::synchronizeTabs() { psettingS = mScratchSky; } + mEditSky = psettingS; doCloseInventoryFloater(); setTabsData(tabs, psettingS, canedit); - LLEnvironment::instance().setEnvironment(LLEnvironment::ENV_EDIT, psettingS, psettingW); + LLEnvironment::instance().setEnvironment(LLEnvironment::ENV_EDIT, mEditSky, mEditWater); + LLEnvironment::instance().updateEnvironment(LLEnvironment::TRANSITION_INSTANT); } void LLFloaterEditExtDayCycle::setTabsData(LLTabContainer * tabcontainer, const LLSettingsBase::ptr_t &settings, bool editable) |