summaryrefslogtreecommitdiff
path: root/indra/newview/llconversationview.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llconversationview.cpp')
-rwxr-xr-xindra/newview/llconversationview.cpp27
1 files changed, 10 insertions, 17 deletions
diff --git a/indra/newview/llconversationview.cpp b/indra/newview/llconversationview.cpp
index 9144f402b4..92493194b8 100755
--- a/indra/newview/llconversationview.cpp
+++ b/indra/newview/llconversationview.cpp
@@ -437,29 +437,22 @@ void LLConversationViewParticipant::selectItem()
LLIMFloaterContainer* container = LLIMFloaterContainer::getInstance();
LLFloater* session_floater;
- //Only execute when switching floaters (conversations)
- if(vmi && vmi->getUUID() != container->getSelectedSession())
+ if(vmi)
{
- //When null, show the nearby chat conversation floater
- if(vmi->getUUID().isNull())
+ session_floater = LLIMConversation::getConversation(vmi->getUUID());
+
+ //Only execute when switching floaters (conversations)
+ if(vmi->getUUID() != container->getSelectedSession())
{
- LLNearbyChat* nearbyChat = LLFloaterReg::findTypedInstance<LLNearbyChat>("nearby_chat");
- nearbyChat->show();
+ container->selectFloater(session_floater);
+ // Store the active session
+ container->setSelectedSession(vmi->getUUID());
}
- //Otherwise, show the IM conversation floater
+ //Focus the current conversation floater (it is already visible so just focus it)
else
{
- LLIMFloater::show(vmi->getUUID());
+ session_floater->setFocus(TRUE);
}
-
- // Store the active session
- container->setSelectedSession(vmi->getUUID());
- }
- //Focus the current conversation floater (it is already visible so just focus it)
- else
- {
- session_floater = LLIMConversation::getConversation(vmi->getUUID());
- session_floater->setFocus(TRUE);
}
LLFolderViewItem::selectItem();