summaryrefslogtreecommitdiff
path: root/indra/newview/llimfloatercontainer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llimfloatercontainer.cpp')
-rwxr-xr-xindra/newview/llimfloatercontainer.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp
index b4802c71f9..58d2020801 100755
--- a/indra/newview/llimfloatercontainer.cpp
+++ b/indra/newview/llimfloatercontainer.cpp
@@ -689,13 +689,20 @@ void LLIMFloaterContainer::doToSelected(const LLSD& userdata)
LLIMFloater * conversation;
getSelectedUUIDs(selected_uuids);
+ //Find the conversation floater associated with the selected id
conversation = LLIMFloater::findInstance(selected_uuids.front());
-
+
+ //When a one-on-one conversation exists, retrieve the participant id from the conversation floater b/c
+ //selected_uuids.front() does not pertain to the UUID of the person you are having the conversation with.
if(conversation &&
+ mConversationsRoot &&
+ mConversationsRoot->getCurSelectedItem() &&
+ mConversationsRoot->getCurSelectedItem()->getViewModelItem() &&
static_cast<LLConversationItem *>(mConversationsRoot->getCurSelectedItem()->getViewModelItem())->getType() == LLConversationItem::CONV_SESSION_1_ON_1)
{
currentSelectedUUID = conversation->getOtherParticipantUUID();
}
+ //Otherwise can get the UUID directly from selected_uuids
else
{
currentSelectedUUID = selected_uuids.front();