From 3033ca84745f67169caf518ee97d0aab519897fe Mon Sep 17 00:00:00 2001
From: Richard Linden <none@none>
Date: Tue, 20 Mar 2012 10:52:41 -0700
Subject: CHUI-61 FIX Relative floater positions not written to settings file
 if previous settings exist from old viewer only write back floater
 positioning information generated from legacy saved rect after reading any
 new floater positioning info

---
 indra/llui/llfloater.cpp | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

(limited to 'indra')

diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp
index 9c4bf0a5c2..84754d9c4d 100644
--- a/indra/llui/llfloater.cpp
+++ b/indra/llui/llfloater.cpp
@@ -885,7 +885,6 @@ bool LLFloater::applyRectControl()
 			mPositioning = LLFloaterEnums::POSITIONING_RELATIVE;
 			LLRect screen_rect = calcScreenRect();
 			mPosition = LLCoordGL(screen_rect.getCenterX(), screen_rect.getCenterY()).convert();
-			storeRectControl();
 		}
 
 		LLControlVariablePtr x_control = getControlGroup()->getControl(mPosXControl);
@@ -904,6 +903,13 @@ bool LLFloater::applyRectControl()
 		}
 	}
 
+	if (saved_rect)
+	{
+		// propagate any derived positioning data back to settings file
+		storeRectControl();
+	}
+
+
 	return saved_rect;
 }
 
-- 
cgit v1.2.3