summaryrefslogtreecommitdiff
path: root/indra/newview/llconversationmodel.cpp
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2015-10-12 16:24:05 -0400
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2015-10-12 16:24:05 -0400
commita16a6034c25c5e78331ef1bd13485df8759456e5 (patch)
treec1d1ef6f387daa81039b27a2cdb435a31c25b5d7 /indra/newview/llconversationmodel.cpp
parent5b58bfb937f7f996c7f1b97f15b1c837aa23a463 (diff)
parent4312629e7c5749b86add9d42e6e550602f34dbf5 (diff)
merge
Diffstat (limited to 'indra/newview/llconversationmodel.cpp')
-rwxr-xr-xindra/newview/llconversationmodel.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/indra/newview/llconversationmodel.cpp b/indra/newview/llconversationmodel.cpp
index 6e32ce60ec..328a638f2f 100755
--- a/indra/newview/llconversationmodel.cpp
+++ b/indra/newview/llconversationmodel.cpp
@@ -136,7 +136,24 @@ void LLConversationItem::buildParticipantMenuOptions(menuentry_vec_t& items, U32
items.push_back(std::string("im"));
items.push_back(std::string("offer_teleport"));
items.push_back(std::string("request_teleport"));
- items.push_back(std::string("voice_call"));
+
+ if (getType() != CONV_SESSION_1_ON_1)
+ {
+ items.push_back(std::string("voice_call"));
+ }
+ else
+ {
+ LLVoiceChannel* voice_channel = LLIMModel::getInstance() ? LLIMModel::getInstance()->getVoiceChannel(this->getUUID()) : NULL;
+ if(voice_channel != LLVoiceChannel::getCurrentVoiceChannel())
+ {
+ items.push_back(std::string("voice_call"));
+ }
+ else
+ {
+ items.push_back(std::string("disconnect_from_voice"));
+ }
+ }
+
items.push_back(std::string("chat_history"));
items.push_back(std::string("separator_chat_history"));
items.push_back(std::string("add_friend"));