From c49e9baa487610eb16717d6c6b01ed1d1c0426d3 Mon Sep 17 00:00:00 2001
From: Andrey Kleshchev <andreykproductengine@lindenlab.com>
Date: Wed, 15 Apr 2020 22:52:28 +0300
Subject: [PATCH] SL-12607 Rearrange login panel

---
 indra/newview/llprogressview.cpp              |  19 +-
 .../skins/default/textures/textures.xml       |   1 +
 .../textures/widgets/ProgressBarSolid.png     | Bin 0 -> 208 bytes
 .../skins/default/xui/en/panel_progress.xml   | 198 ++++++++++++------
 4 files changed, 148 insertions(+), 70 deletions(-)
 create mode 100644 indra/newview/skins/default/textures/widgets/ProgressBarSolid.png

diff --git a/indra/newview/llprogressview.cpp b/indra/newview/llprogressview.cpp
index b51c791621e..dd44e661d6f 100644
--- a/indra/newview/llprogressview.cpp
+++ b/indra/newview/llprogressview.cpp
@@ -382,14 +382,14 @@ void LLProgressView::initLogos()
     const U8 image_codec = IMG_CODEC_PNG;
     const LLRectf default_clip(0.f, 1.f, 1.f, 0.f);
     const S32 default_height = 32;
-    const S32 default_pad = 7;
+    const S32 default_pad = 25;
 
     S32 icon_width;
 
     // We don't know final screen rect yet, so we can't precalculate position fully
     LLTextBox *logos_label = getChild<LLTextBox>("logos_lbl");
     S32 texture_start_x = logos_label->getFont()->getWidthF32(logos_label->getText()) + default_pad;
-    S32 texture_start_y = -3;
+    S32 texture_start_y = -7;
 
     // Normally we would just preload these textures from textures.xml,
     // and display them via icon control, but they are only needed on
@@ -507,11 +507,10 @@ void LLProgressView::initTextures(S32 location_id, bool is_in_production)
     initStartTexture(location_id, is_in_production);
     initLogos();
 
-    if (!mLogosList.empty())
-    {
-        LLTextBox *logos_label = getChild<LLTextBox>("logos_lbl");
-        logos_label->setVisible(true);
-    }
+    childSetVisible("panel_icons", mLogosList.empty() ? FALSE : TRUE);
+    childSetVisible("panel_login", TRUE);
+    childSetVisible("panel_teleport", FALSE);
+    childSetVisible("panel_spacer", FALSE);
 }
 
 void LLProgressView::releaseTextures()
@@ -519,8 +518,10 @@ void LLProgressView::releaseTextures()
     gStartTexture = NULL;
     mLogosList.clear();
 
-    LLTextBox *logos_label = getChild<LLTextBox>("logos_lbl");
-    logos_label->setVisible(false);
+    childSetVisible("panel_login", FALSE);
+    childSetVisible("panel_teleport", TRUE);
+    childSetVisible("panel_spacer", TRUE);
+    childSetVisible("panel_icons", FALSE);
 }
 
 void LLProgressView::setCancelButtonVisible(BOOL b, const std::string& label)
diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml
index 17340e08585..d4645cc4595 100644
--- a/indra/newview/skins/default/textures/textures.xml
+++ b/indra/newview/skins/default/textures/textures.xml
@@ -486,6 +486,7 @@ with the same filename but different name
   <texture name="Play_Press" file_name="icons/Play_Press.png" preload="false" />
   
   <texture name="ProgressBar" file_name="widgets/ProgressBar.png" preload="true" scale.left="4" scale.top="11" scale.right="48" scale.bottom="3" />
+  <texture name="ProgressBarSolid" file_name="widgets/ProgressBarSolid.png" preload="true" scale.left="4" scale.top="11" scale.right="48" scale.bottom="3" />
   <texture name="ProgressTrack" file_name="widgets/ProgressTrack.png" preload="true" scale.left="4" scale.top="13" scale.right="148" scale.bottom="2" />
 
   <texture name="PushButton_Disabled" file_name="widgets/PushButton_Disabled.png" preload="true" scale.left="4" scale.top="19" scale.right="28" scale.bottom="4" />
diff --git a/indra/newview/skins/default/textures/widgets/ProgressBarSolid.png b/indra/newview/skins/default/textures/widgets/ProgressBarSolid.png
new file mode 100644
index 0000000000000000000000000000000000000000..ec0926bfa1cbc70b172f51704227bc30e418cf6b
GIT binary patch
literal 208
zcmeAS@N?(olHy`uVBq!ia0vp^CP2*3!3HE(AAQpbq!^2X+?^QKos)S9<glbW`Z_W&
zZ0zU$lgJ9>a~60+7BevL9R^{><M}I6fP$%>E{-7{-fyRPb2%7tF!O%>C$6izt}Ebo
z^L1~NJ&~Se&2EXzuM5(-44yv`l1eV%bY(evmGOs}i|Uo?=R!s0dJC^fO`kAx?d8SN
zdwsn;1G1kAX)Rszc~|}yvsGFrEQ>{6Jm+*VJGs+syWGubj6e$+JYD@<);T3K0RT#W
BMsNTC

literal 0
HcmV?d00001

diff --git a/indra/newview/skins/default/xui/en/panel_progress.xml b/indra/newview/skins/default/xui/en/panel_progress.xml
index f52422c08ff..1384e5e779f 100644
--- a/indra/newview/skins/default/xui/en/panel_progress.xml
+++ b/indra/newview/skins/default/xui/en/panel_progress.xml
@@ -58,69 +58,145 @@
                      left="0"
                      top="0"
                      width="670" />
-                    <text
-                     follows="left|right|top"
-                     font="SansSerifHuge"
-                     font_shadow="none"
-                     halign="left"
-                     height="20"
-                     layout="topleft"
-                     left_delta="47"
-                     name="title_text"
-                     text_color="LoginProgressBoxTextColor"
-                     top_delta="50"
-                     right="-47"/>
-                    <text
-                     follows="left|right|top"
-                     font="SansSerif"
-                     font_shadow="none"
-                     halign="left"
-                     height="20"
-                     layout="topleft"
-                     left_delta="0"
-                     name="progress_text"
-                     text_color="LoginProgressBoxTextColor"
-                     top_pad="5"
-                     right="-47"
-                     word_wrap="true"/>
-                    <progress_bar
-                     bottom="115"
-                     color_bar="1 1 1 0.96"
-                     follows="left|right|top"
-                     height="16"
-                     layout="topleft"
-                     left="45"
-                     name="login_progress_bar"
-                     right="-45" />
-                    <text
+                    <layout_stack
                      follows="left|right|top|bottom"
-                     font="SansSerifLarge"
-                     font_shadow="none"
-                     halign="left"
-                     height="100"
-                     layout="topleft"
-                     left="45"
-                     line_spacing.pixels="2"
-                     name="message_text"
-                     text_color="LoginProgressBoxTextColor"
-                     top="145"
-                     right="-90"
-                     word_wrap="true"/>
-                    <!--Logos are tied to following label from code-->
-                    <text
-                     follows="left|right|top"
+                     height="250"
                      layout="topleft"
-                     font_shadow="none"
-                     halign="left"
-                     height="16"
-                     width="100"
-                     left="48"
-                     top="200"
-                     line_spacing.pixels="2"
-                     name="logos_lbl"
-                     text_color="LoginProgressBoxTextColor">
-                      Second Life uses
-                    </text>
+                     left="0"
+                     orientation="vertical"
+                     name="vertical_centering"
+                     animate="false"
+                     top="0"
+                     width="670">
+                      <layout_panel
+                       auto_resize="false"
+                       height="60"
+                       layout="topleft"
+                       min_height="60"
+                       name="panel_login"
+                       width="670">
+                        <text
+                         follows="left|right|top"
+                         layout="topleft"
+                         font="SansSerifHuge"
+                         font_shadow="none"
+                         halign="left"
+                         height="20"
+                         left="47"
+                         top="32"
+                         right="-47"
+                         name="login_text"
+                         text_color="LoginProgressBoxTextColor">
+                          Logging in...
+                        </text>
+                      </layout_panel>
+                      <layout_panel
+                       auto_resize="false"
+                       height="100"
+                       layout="topleft"
+                       min_height="100"
+                       name="panel_teleport"
+                       width="670">
+                        <text
+                         follows="left|right|top"
+                         layout="topleft"
+                         font="SansSerifHuge"
+                         font_shadow="none"
+                         halign="left"
+                         height="20"
+                         left="47"
+                         top="50"
+                         right="-47"
+                         name="title_text"
+                         text_color="LoginProgressBoxTextColor"/>
+                        <text
+                         follows="left|right|top"
+                         layout="topleft"
+                         font="SansSerif"
+                         font_shadow="none"
+                         halign="left"
+                         height="20"
+                         top_pad="5"
+                         right="-47"
+                         left_delta="0"
+                         name="progress_text"
+                         text_color="LoginProgressBoxTextColor"
+                         word_wrap="true"/>
+                      </layout_panel>
+                      <layout_panel
+                       auto_resize="false"
+                       height="19"
+                       layout="topleft"
+                       min_height="19"
+                       name="panel_progress"
+                       width="670">
+                        <progress_bar
+                         color_bar="1 0.314 0 0.96"
+                         follows="left|right|top"
+                         layout="topleft"
+                         image_fill="ProgressBarSolid"
+                         height="16"
+                         left="45"
+                         top="2"
+                         name="login_progress_bar"
+                         right="-45" />
+                      </layout_panel>
+                      <layout_panel
+                       auto_resize="false"
+                       height="12"
+                       layout="topleft"
+                       min_height="12"
+                       name="panel_spacer"
+                       width="670">
+                      </layout_panel>
+                      <layout_panel
+                       auto_resize="false"
+                       height="110"
+                       layout="topleft"
+                       min_height="110"
+                       name="panel_motd"
+                       width="670">
+                        <text
+                         follows="left|right|top|bottom"
+                         font="SansSerifLarge"
+                         font_shadow="none"
+                         halign="left"
+                         valign="center"
+                         height="100"
+                         layout="topleft"
+                         left="45"
+                         line_spacing.pixels="2"
+                         name="message_text"
+                         text_color="LoginProgressBoxTextColor"
+                         top="7"
+                         right="-90"
+                         word_wrap="true"/>
+                      </layout_panel>
+                      <layout_panel
+                       auto_resize="false"
+                       height="40"
+                       layout="topleft"
+                       min_height="40"
+                       name="panel_icons"
+                       width="670">
+                        <!--Logos are tied to following label from code-->
+                        <text
+                         follows="left|right|top"
+                         layout="topleft"
+                         font="SansSerifLarge"
+                         font_shadow="none"
+                         halign="left"
+                         height="16"
+                         width="240"
+                         left="47"
+                         top="6"
+                         line_spacing.pixels="2"
+                         name="logos_lbl"
+                         text_color="LoginProgressBoxTextColor">
+                          Second Life uses
+                        </text>
+                      </layout_panel>
+                    </layout_stack>
                 </layout_panel>
                 <layout_panel
                  height="200"
-- 
GitLab