diff options
author | Mnikolenko Productengine <mnikolenko@productengine.com> | 2017-03-03 17:26:07 +0200 |
---|---|---|
committer | Mnikolenko Productengine <mnikolenko@productengine.com> | 2017-03-03 17:26:07 +0200 |
commit | 5bd5a474dd5582047fdbde2f0def0035db8b504a (patch) | |
tree | ed1be82acb8ad2df5b63c3438469f60c343119cf | |
parent | ef8c1b7e7b826da125cb080306ea19c5cefaf215 (diff) |
MAINT-7168 SL Viewer should remember avatar rendering selection
-rw-r--r-- | indra/newview/llvoavatar.cpp | 16 | ||||
-rw-r--r-- | indra/newview/llvoavatar.h | 2 |
2 files changed, 18 insertions, 0 deletions
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 8888879b8a..760eee17f3 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -727,6 +727,8 @@ LLVOAvatar::LLVOAvatar(const LLUUID& id, { LLSceneMonitor::getInstance()->freezeAvatar((LLCharacter*)this); } + + mVisuallyMuteSetting = getSavedVisualMuteSettings(); } std::string LLVOAvatar::avString() const @@ -9228,12 +9230,26 @@ void LLVOAvatar::calculateUpdateRenderComplexity() } } +//static +std::map<LLUUID, LLVOAvatar::VisualMuteSettings> LLVOAvatar::sVisuallyMuteSettingsMap; + void LLVOAvatar::setVisualMuteSettings(VisualMuteSettings set) { mVisuallyMuteSetting = set; mNeedsImpostorUpdate = TRUE; + sVisuallyMuteSettingsMap[getID()] = set; } +LLVOAvatar::VisualMuteSettings LLVOAvatar::getSavedVisualMuteSettings() +{ + std::map<LLUUID, VisualMuteSettings>::iterator iter = sVisuallyMuteSettingsMap.find(getID()); + if (iter != sVisuallyMuteSettingsMap.end()) + { + return iter->second; + } + + return AV_RENDER_NORMALLY; +} void LLVOAvatar::calcMutedAVColor() { diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index bd89d4ef23..73e4fbd108 100644 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -407,6 +407,7 @@ public: }; void setVisualMuteSettings(VisualMuteSettings set); VisualMuteSettings getVisualMuteSettings() { return mVisuallyMuteSetting; }; + VisualMuteSettings getSavedVisualMuteSettings(); U32 renderRigid(); U32 renderSkinned(); @@ -440,6 +441,7 @@ public: VisualMuteSettings mVisuallyMuteSetting; // Always or never visually mute this AV + static std::map<LLUUID, VisualMuteSettings> sVisuallyMuteSettingsMap; //-------------------------------------------------------------------- // Morph masks //-------------------------------------------------------------------- |