summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMnikolenko Productengine <mnikolenko@productengine.com>2017-03-03 17:26:07 +0200
committerMnikolenko Productengine <mnikolenko@productengine.com>2017-03-03 17:26:07 +0200
commit5bd5a474dd5582047fdbde2f0def0035db8b504a (patch)
treeed1be82acb8ad2df5b63c3438469f60c343119cf
parentef8c1b7e7b826da125cb080306ea19c5cefaf215 (diff)
MAINT-7168 SL Viewer should remember avatar rendering selection
-rw-r--r--indra/newview/llvoavatar.cpp16
-rw-r--r--indra/newview/llvoavatar.h2
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
//--------------------------------------------------------------------