From adb3959ba44ef4ba50ec4ad4994ae79e01b3847e Mon Sep 17 00:00:00 2001
From: Rye Mutt <rye@alchemyviewer.org>
Date: Sun, 5 Apr 2020 10:03:26 -0400
Subject: [PATCH] Readd setting to disable camera object collision

---
 indra/newview/app_settings/settings_alchemy.xml | 11 +++++++++++
 indra/newview/llagentcamera.cpp                 |  3 ++-
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/indra/newview/app_settings/settings_alchemy.xml b/indra/newview/app_settings/settings_alchemy.xml
index ba05ff17b72..9a5d5f5b04a 100644
--- a/indra/newview/app_settings/settings_alchemy.xml
+++ b/indra/newview/app_settings/settings_alchemy.xml
@@ -211,6 +211,17 @@
       <key>Value</key>
       <string>/tp2cam</string>
     </map>
+    <key>AlchemyLookAtShow</key>
+    <map>
+      <key>Comment</key>
+      <string>If true, avatar look at beacons will be displayed</string>
+      <key>Persist</key>
+      <integer>1</integer>
+      <key>Type</key>
+      <string>Boolean</string>
+      <key>Value</key>
+      <integer>0</integer>
+    </map>
     <key>AlchemyDisableEffectSpiral</key>
     <map>
       <key>Comment</key>
diff --git a/indra/newview/llagentcamera.cpp b/indra/newview/llagentcamera.cpp
index bb83e303acf..067cf66f3fb 100644
--- a/indra/newview/llagentcamera.cpp
+++ b/indra/newview/llagentcamera.cpp
@@ -1799,7 +1799,8 @@ LLVector3d LLAgentCamera::calcCameraPositionTargetGlobal(BOOL *hit_limit)
 				local_camera_offset = gAgent.getFrameAgent().rotateToAbsolute( local_camera_offset );
 			}
 
-			if (!mCameraCollidePlane.isExactlyZero() && (!isAgentAvatarValid() || !gAgentAvatarp->isSitting()))
+			static LLCachedControl<bool> disable_camera_collision(gSavedSettings, "AlchemyDisableCameraCollision", false);
+			if (!disable_camera_collision && !mCameraCollidePlane.isExactlyZero() && (!isAgentAvatarValid() || !gAgentAvatarp->isSitting()))
 			{
 				LLVector3 plane_normal;
 				plane_normal.setVec(mCameraCollidePlane.mV);
-- 
GitLab