From aabb0bbc49aa15b100dc8c2cbf286202cb084646 Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <andreykproductengine@lindenlab.com>
Date: Thu, 11 Jun 2020 15:53:18 +0300
Subject: [PATCH] SL-13390 Disable Havok icon when Havok is not included

---
 indra/newview/CMakeLists.txt     |  6 ++++++
 indra/newview/llprogressview.cpp | 13 +++++++------
 2 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index 8977dcf50dd..1adc25090f6 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -1736,6 +1736,12 @@ if (FMODSTUDIO)
 endif (FMODSTUDIO)
 
 set_source_files_properties(llstartup.cpp PROPERTIES COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS}")
+
+if (HAVOK OR HAVOK_TPV)
+  set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_HAVOK")
+endif (HAVOK OR HAVOK_TPV)
+
+# progress view disables/enables icons based on available packages
 set_source_files_properties(llprogressview.cpp PROPERTIES COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS}")
 
 list(APPEND viewer_SOURCE_FILES ${viewer_HEADER_FILES})
diff --git a/indra/newview/llprogressview.cpp b/indra/newview/llprogressview.cpp
index 19c8ef26510..3e3ab3a6764 100644
--- a/indra/newview/llprogressview.cpp
+++ b/indra/newview/llprogressview.cpp
@@ -385,7 +385,6 @@ void LLProgressView::initLogos()
     const S32 default_pad = 15;
 
     S32 icon_width, icon_height;
-    S32 pad_y = 0;
 
     // We don't know final screen rect yet, so we can't precalculate position fully
     LLTextBox *logos_label = getChild<LLTextBox>("logos_lbl");
@@ -405,28 +404,30 @@ void LLProgressView::initLogos()
     // with no internal paddings so it gets additional padding
     icon_width = 77;
     icon_height = 21;
-    pad_y = 4;
+    S32 pad_fmod_y = 4;
     texture_start_x++;
     loadLogo(temp_str + "fmod_logo.png",
         image_codec,
-        LLRect(texture_start_x, texture_start_y + pad_y + icon_height, texture_start_x + icon_width, texture_start_y + pad_y),
+        LLRect(texture_start_x, texture_start_y + pad_fmod_y + icon_height, texture_start_x + icon_width, texture_start_y + pad_fmod_y),
         default_clip,
         default_clip);
 
     texture_start_x += icon_width + default_pad + 1;
-#endif
+#endif //LL_FMODSTUDIO
+#ifdef LL_HAVOK
     // original image size is 342x113, central element is on a larger side
     // plus internal padding, so it gets slightly more height than desired 32
     icon_width = 88;
     icon_height = 29;
-    pad_y = -1;
+    S32 pad_havok_y = -1;
     loadLogo(temp_str + "havok_logo.png",
         image_codec,
-        LLRect(texture_start_x, texture_start_y + pad_y + icon_height, texture_start_x + icon_width, texture_start_y + pad_y),
+        LLRect(texture_start_x, texture_start_y + pad_havok_y + icon_height, texture_start_x + icon_width, texture_start_y + pad_havok_y),
         default_clip,
         default_clip);
 
     texture_start_x += icon_width + default_pad;
+#endif //LL_HAVOK
 
     // 108x41
     icon_width = 74;
-- 
GitLab