diff options
author | Baker Linden <baker@lindenlab.com> | 2013-12-18 18:25:47 -0500 |
---|---|---|
committer | Baker Linden <baker@lindenlab.com> | 2013-12-18 18:25:47 -0500 |
commit | 3c521d8207092f1c48e158082b88c5e81cc9c440 (patch) | |
tree | 36a18cfaed8fc4e3ee2a84604f3876832522e529 /indra/newview/llconversationview.cpp | |
parent | 74707f0057c05dc4dd439302e64fe29e8ed91a32 (diff) | |
parent | 1a9b9f1bd1b5f64b35b9ce6eff458cdb7a79fe6e (diff) |
viewer-release merge
Diffstat (limited to 'indra/newview/llconversationview.cpp')
-rw-r--r--[-rwxr-xr-x] | indra/newview/llconversationview.cpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/indra/newview/llconversationview.cpp b/indra/newview/llconversationview.cpp index 9faa12b2ee..82d3fe74c0 100755..100644 --- a/indra/newview/llconversationview.cpp +++ b/indra/newview/llconversationview.cpp @@ -267,6 +267,23 @@ BOOL LLConversationViewSession::handleMouseDown( S32 x, S32 y, MASK mask ) //This node (conversation) was selected and a child (participant) was not if(result && getRoot()) { + + if(getRoot()->getCurSelectedItem() == this) + { + LLConversationItem* item = dynamic_cast<LLConversationItem *>(getViewModelItem()); + LLUUID session_id = item? item->getUUID() : LLUUID(); + + LLFloaterIMContainer *im_container = LLFloaterReg::getTypedInstance<LLFloaterIMContainer>("im_container"); + if (im_container->isConversationsPaneCollapsed() && im_container->getSelectedSession() == session_id) + { + im_container->collapseMessagesPane(!im_container->isMessagesPaneCollapsed()); + } + else + { + im_container->collapseMessagesPane(false); + } + + } selectConversationItem(); } @@ -318,7 +335,6 @@ void LLConversationViewSession::selectConversationItem() LLFloaterIMContainer *im_container = LLFloaterReg::getTypedInstance<LLFloaterIMContainer>("im_container"); im_container->flashConversationItemWidget(session_id,false); im_container->selectConversationPair(session_id, false); - im_container->collapseMessagesPane(false); } } |