summaryrefslogtreecommitdiff
path: root/indra/newview/llfloatereditextdaycycle.cpp
diff options
context:
space:
mode:
authorGraham Linden <graham@lindenlab.com>2018-08-15 21:34:06 +0100
committerGraham Linden <graham@lindenlab.com>2018-08-15 21:34:06 +0100
commitc5b0d4ccd074b7062e5100c3b021da53170eb30c (patch)
tree6600bff8fd4d7f8af3f8d7929c511fbe3d6dc533 /indra/newview/llfloatereditextdaycycle.cpp
parentec0fe8078c1f64c1579f382a686282ddbb82f470 (diff)
parentf028ddd0754d5a2fd2f2300aa02eff4fe6cfa96f (diff)
Merge
Diffstat (limited to 'indra/newview/llfloatereditextdaycycle.cpp')
-rw-r--r--indra/newview/llfloatereditextdaycycle.cpp16
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)