From a0a196996509025ffa14d3d6252fb77da5e3170d Mon Sep 17 00:00:00 2001
From: PavelK ProductEngine <pkrivich@productengine.com>
Date: Fri, 23 Aug 2013 21:34:30 +0300
Subject: [PATCH] MAINT-3031: Toggle Expanding CHUI when Icon is CLicked

---
 indra/newview/llconversationview.cpp   |  9 ++++++++-
 indra/newview/llfloaterimcontainer.cpp | 10 ++++++++++
 indra/newview/llfloaterimcontainer.h   |  2 ++
 3 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/indra/newview/llconversationview.cpp b/indra/newview/llconversationview.cpp
index 9faa12b2eea..4f875cca205 100644
--- a/indra/newview/llconversationview.cpp
+++ b/indra/newview/llconversationview.cpp
@@ -316,9 +316,16 @@ void LLConversationViewSession::selectConversationItem()
 		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);
+		}
 		im_container->flashConversationItemWidget(session_id,false);
 		im_container->selectConversationPair(session_id, false);
-		im_container->collapseMessagesPane(false);
 	}
 }
 
diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp
index aa3bec878a9..258cace042e 100755
--- a/indra/newview/llfloaterimcontainer.cpp
+++ b/indra/newview/llfloaterimcontainer.cpp
@@ -721,6 +721,16 @@ void LLFloaterIMContainer::updateResizeLimits()
 	assignResizeLimits();
 }
 
+bool LLFloaterIMContainer::isMessagesPaneCollapsed()
+{
+	return mMessagesPane->isCollapsed();
+}
+
+bool LLFloaterIMContainer::isConversationsPaneCollapsed()
+{
+	return mConversationsPane->isCollapsed();
+}
+
 void LLFloaterIMContainer::collapseMessagesPane(bool collapse)
 {
 	if (mMessagesPane->isCollapsed() == collapse)
diff --git a/indra/newview/llfloaterimcontainer.h b/indra/newview/llfloaterimcontainer.h
index 5d88b7881a0..f6d973b9b3b 100755
--- a/indra/newview/llfloaterimcontainer.h
+++ b/indra/newview/llfloaterimcontainer.h
@@ -90,6 +90,8 @@ class LLFloaterIMContainer
 	static void onCurrentChannelChanged(const LLUUID& session_id);
 
 	void collapseMessagesPane(bool collapse);
+	bool isMessagesPaneCollapsed();
+	bool isConversationsPaneCollapsed();
 	
 	// Callbacks
 	static void idle(void* user_data);
-- 
GitLab