From 795695a2db6de25a85fb319e79c44f8a4e1903b2 Mon Sep 17 00:00:00 2001
From: Leslie Linden <leslie@lindenlab.com>
Date: Mon, 17 Oct 2011 13:55:37 -0700
Subject: [PATCH] EXP-1396 FIX -- Local chat toasts appear is upper left
 corner, reviewed by Richard.

---
 indra/newview/llnearbychathandler.cpp | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/indra/newview/llnearbychathandler.cpp b/indra/newview/llnearbychathandler.cpp
index 8607718e905..1ba1d2f0f06 100644
--- a/indra/newview/llnearbychathandler.cpp
+++ b/indra/newview/llnearbychathandler.cpp
@@ -384,9 +384,9 @@ void LLNearbyChatScreenChannel::arrangeToasts()
 	channel_rect.mLeft += 10;
 	channel_rect.mRight = channel_rect.mLeft + 300;
 
-	S32 channel_top = channel_rect.mTop;
+	S32 channel_bottom = channel_rect.mBottom;
 
-	S32		top = channel_top - 10;
+	S32		bottom = channel_bottom + 10;
 	S32		margin = gSavedSettings.getS32("ToastGap");
 
 	//sort active toasts
@@ -403,9 +403,9 @@ void LLNearbyChatScreenChannel::arrangeToasts()
 			continue;
 		}
 
-		S32 toast_bottom = top - toast->getRect().getHeight() - margin;
+		S32 toast_top = bottom + toast->getRect().getHeight() + margin;
 
-		if(toast_bottom < channel_rect.mBottom)
+		if(toast_top > channel_rect.getHeight())
 		{
 			while(it!=m_active_toasts.end())
 			{
@@ -416,10 +416,10 @@ void LLNearbyChatScreenChannel::arrangeToasts()
 		}
 
 		toast_rect = toast->getRect();
-		toast_rect.setOriginAndSize(channel_rect.mLeft , toast_bottom, toast_rect.getWidth() ,toast_rect.getHeight());
+		toast_rect.setLeftTopAndSize(channel_rect.mLeft , bottom + toast_rect.getHeight(), toast_rect.getWidth() ,toast_rect.getHeight());
 
 		toast->setRect(toast_rect);
-		top -= toast_rect.getHeight() - toast->getTopPad() + margin;
+		bottom += toast_rect.getHeight() - toast->getTopPad() + margin;
 	}
 	
 	// use reverse order to provide correct z-order and avoid toast blinking
-- 
GitLab