summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Nikolenko <maximnproductengine@lindenlab.com>2026-03-20 18:05:42 +0200
committerGitHub <noreply@github.com>2026-03-20 18:05:42 +0200
commita8ba25001039afc5fadc0754c8f811e49b50b7d1 (patch)
treeac12c232d10d6f99fa651e22bbf8d23bf639dd2f
parent1bd6893388ed939f3d4628be2b5f00de49350d50 (diff)
#5557 adjust buttons position when hiding grid selector (#5559)
-rw-r--r--indra/newview/llpanellogin.cpp14
-rw-r--r--indra/newview/llpanellogin.h4
-rw-r--r--indra/newview/skins/default/xui/en/panel_login.xml197
3 files changed, 133 insertions, 82 deletions
diff --git a/indra/newview/llpanellogin.cpp b/indra/newview/llpanellogin.cpp
index 77de25c28e..6449141b8c 100644
--- a/indra/newview/llpanellogin.cpp
+++ b/indra/newview/llpanellogin.cpp
@@ -242,6 +242,9 @@ LLPanelLogin::LLPanelLogin(const LLRect &rect,
// change z sort of clickable text to be behind buttons
sendChildToBack(getChildView("forgot_password_text"));
+ mLoginStack = getChild<LLLayoutStack>("login_stack");
+ mGridPanel = getChild<LLLayoutPanel>("grid_panel");
+
std::string current_grid = LLGridManager::getInstance()->getGrid();
if (!mFirstLoginThisInstall)
{
@@ -766,6 +769,7 @@ void LLPanelLogin::updateLocationSelectorsVisibility()
{
grid_txt->setVisible(show_server);
}
+ sInstance->collapseGridPanel(!show_server);
}
}
@@ -1401,3 +1405,13 @@ bool LLPanelLogin::onUpdateNotification(const LLSD& notify)
}
return false;
}
+
+void LLPanelLogin::collapseGridPanel(bool collapse)
+{
+ if (mGridPanel->isCollapsed() == collapse)
+ {
+ return;
+ }
+ mLoginStack->collapsePanel(mGridPanel, collapse);
+ mLoginStack->updateLayout();
+}
diff --git a/indra/newview/llpanellogin.h b/indra/newview/llpanellogin.h
index f527aa53ac..14528443cf 100644
--- a/indra/newview/llpanellogin.h
+++ b/indra/newview/llpanellogin.h
@@ -87,6 +87,8 @@ public:
// extract name from cred in a format apropriate for username field
static std::string getUserName(LLPointer<LLCredential> &cred);
+ void collapseGridPanel(bool collapse);
+
private:
friend class LLPanelLoginListener;
void addFavoritesToStartLocation();
@@ -132,6 +134,8 @@ private:
bool mAlertNotif;
LLButton* mLoginBtn;
+ LLLayoutPanel* mGridPanel;
+ LLLayoutStack* mLoginStack;
};
#endif
diff --git a/indra/newview/skins/default/xui/en/panel_login.xml b/indra/newview/skins/default/xui/en/panel_login.xml
index 5bcd1fa0a4..ca03d2dbc5 100644
--- a/indra/newview/skins/default/xui/en/panel_login.xml
+++ b/indra/newview/skins/default/xui/en/panel_login.xml
@@ -208,90 +208,123 @@
name="MyHome"
value="home" />
</combo_box>
- <text
+ <layout_stack
follows="left|top"
- font="SansSerif"
- text_color="white"
- height="12"
- name="grid_text"
- top_pad="18"
- width="120"
- valign="center">
- Grid
- </text>
- <combo_box
- allow_text_entry="false"
- font="SansSerifTiny"
- follows="left|top"
- height="28"
- top_pad="6"
- max_chars="128"
- label="Select grid"
layout="topleft"
- name="server_combo"
- width="220">
- <combo_box.drop_down_button
- pad_bottom="1"
- pad_left="10"
- font="SansSerif"
- label_color="Black"
- label_color_selected="Black"
- draw_focus_border="false"
- image_overlay="ComboButton_Arrow"
- image_overlay_right_delta="10"
- image_unselected="TextField_Active"
- image_selected="TextField_Active"
- image_pressed="TextField_Active"
- image_pressed_selected="TextField_Active"/>
- </combo_box>
- <button
- follows="left|top"
- image_unselected="PushButton_Login"
- image_pressed="PushButton_Login_Pressed"
- image_hover_unselected="PushButton_Login_Over"
- label="Log in"
- label_color="Black"
- label_color_disabled="Black"
- font="SansSerifLarge"
- font.style="BOLD"
- name="connect_btn"
- draw_focus_border="false"
- hover_hand_cursor="true"
- enabled="true"
- width="220"
- height="30"
- top_pad="25"
- pad_bottom="1" />
- <text
- follows="left|top"
- font="SansSerifMedium"
- text_color="EmphasisColor"
- height="15"
- name="forgot_password_text"
- left="60"
- top_pad="9"
- width="180"
- halign="center">
- Need help logging in?
- </text>
- <button
- follows="left|top"
- image_unselected="PushButton_Sign"
- image_pressed="PushButton_Sign_Pressed"
- image_hover_unselected="PushButton_Sign_Over"
- label="Create account"
- label_color="White"
- label_color_disabled="Black"
- font="SansSerifMedium"
- font.style="BOLD"
- name="sign_btn"
- draw_focus_border="false"
- hover_hand_cursor="true"
- width="220"
- height="35"
- left="40"
- top_pad="25"
- pad_bottom="1" />
+ orientation="vertical"
+ name="login_stack"
+ border_size="0"
+ animate="false"
+ top_pad="0"
+ left="0"
+ height="218"
+ width="300">
+ <layout_panel
+ auto_resize="false"
+ user_resize="false"
+ layout="topleft"
+ name="grid_panel"
+ background_visible="false"
+ height="64"
+ width="300">
+ <text
+ follows="left|top"
+ font="SansSerif"
+ text_color="white"
+ height="12"
+ name="grid_text"
+ top="18"
+ left="40"
+ width="120"
+ valign="center">
+ Grid
+ </text>
+ <combo_box
+ allow_text_entry="false"
+ font="SansSerifTiny"
+ follows="left|top"
+ height="28"
+ top_pad="6"
+ left="40"
+ max_chars="128"
+ label="Select grid"
+ layout="topleft"
+ name="server_combo"
+ width="220">
+ <combo_box.drop_down_button
+ pad_bottom="1"
+ pad_left="10"
+ font="SansSerif"
+ label_color="Black"
+ label_color_selected="Black"
+ draw_focus_border="false"
+ image_overlay="ComboButton_Arrow"
+ image_overlay_right_delta="10"
+ image_unselected="TextField_Active"
+ image_selected="TextField_Active"
+ image_pressed="TextField_Active"
+ image_pressed_selected="TextField_Active"/>
+ </combo_box>
+ </layout_panel>
+ <layout_panel
+ auto_resize="false"
+ user_resize="false"
+ layout="topleft"
+ name="login_panel"
+ background_visible="false"
+ height="172"
+ width="300">
+ <button
+ follows="left|top"
+ image_unselected="PushButton_Login"
+ image_pressed="PushButton_Login_Pressed"
+ image_hover_unselected="PushButton_Login_Over"
+ label="Log in"
+ label_color="Black"
+ label_color_disabled="Black"
+ font="SansSerifLarge"
+ font.style="BOLD"
+ name="connect_btn"
+ draw_focus_border="false"
+ hover_hand_cursor="true"
+ enabled="true"
+ width="220"
+ height="30"
+ left="40"
+ top="25"
+ pad_bottom="1" />
+ <text
+ follows="left|top"
+ font="SansSerifMedium"
+ text_color="EmphasisColor"
+ height="15"
+ name="forgot_password_text"
+ left="60"
+ top_pad="9"
+ width="180"
+ halign="center">
+ Need help logging in?
+ </text>
+ <button
+ follows="left|top"
+ image_unselected="PushButton_Sign"
+ image_pressed="PushButton_Sign_Pressed"
+ image_hover_unselected="PushButton_Sign_Over"
+ label="Create account"
+ label_color="White"
+ label_color_disabled="Black"
+ font="SansSerifMedium"
+ font.style="BOLD"
+ name="sign_btn"
+ draw_focus_border="false"
+ hover_hand_cursor="true"
+ width="220"
+ height="35"
+ left="40"
+ top_pad="25"
+ pad_bottom="1" />
+ </layout_panel>
+ </layout_stack>
</layout_panel>
<layout_panel
auto_resize="false"