From c7b69713b794b9c326a79aad6cdee542c57ada4d Mon Sep 17 00:00:00 2001
From: Alexei Arabadji <aarabadji@productengine.com>
Date: Tue, 22 Dec 2009 20:14:51 +0200
Subject: [PATCH] =?UTF-8?q?fixed=20EXT-3564=20=E2=80=9CDocked=20windows=20?=
 =?UTF-8?q?hide=20when=20clicking=20on=20sidetray=20tabs=E2=80=9D,=20added?=
 =?UTF-8?q?=20sidetray=20tab=20buttons=20panel=20to=20transient=20manager?=
 =?UTF-8?q?=20control=20list,=20added=20right=20padding=20to=20the=20docki?=
 =?UTF-8?q?ng=20rect=20area=20to=20avoid=20overlapping=20docked=20IM=20flo?=
 =?UTF-8?q?aters=20with=20sidetray=20buttons;?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

--HG--
branch : product-engine
---
 indra/newview/llimfloater.cpp | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp
index acaa6076f83..d511e6cd64f 100644
--- a/indra/newview/llimfloater.cpp
+++ b/indra/newview/llimfloater.cpp
@@ -56,6 +56,7 @@
 #include "llvoicechannel.h"
 #include "lltransientfloatermgr.h"
 #include "llinventorymodel.h"
+#include "llrootview.h"
 
 
 
@@ -437,6 +438,16 @@ LLIMFloater* LLIMFloater::show(const LLUUID& session_id)
 void LLIMFloater::getAllowedRect(LLRect& rect)
 {
 	rect = gViewerWindow->getWorldViewRectRaw();
+	static S32 right_padding = 0;
+	if (right_padding == 0)
+	{
+		LLPanel* side_bar_tabs =
+				gViewerWindow->getRootView()->getChild<LLPanel> (
+						"side_bar_tabs");
+		right_padding = side_bar_tabs->getRect().getWidth();
+		LLTransientFloaterMgr::getInstance()->addControlView(side_bar_tabs);
+	}
+	rect.mRight -= right_padding;
 }
 
 void LLIMFloater::setDocked(bool docked, bool pop_on_undock)
-- 
GitLab