summaryrefslogtreecommitdiff
path: root/indra/newview/llpanelprofile.cpp
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2022-05-11 20:38:13 +0300
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2022-05-11 22:10:12 +0300
commit1e84d0e6494df1f5ccb3f69e53849bf26b01e385 (patch)
treea3c8341f73862dbb7e14786b80b4058fd87f65a7 /indra/newview/llpanelprofile.cpp
parent76beebae685d859d4afbff6db3ae6d7785b204da (diff)
SL-15312 Profiles tweaks
Fix loading indicators to be at the center of picls and classified Hide classifieds and picks related buttons for other agents 10px distance from image Fix chat history menu button not working Changed 'partner' field behavior Prevent selection of disabled FL text field
Diffstat (limited to 'indra/newview/llpanelprofile.cpp')
-rw-r--r--indra/newview/llpanelprofile.cpp54
1 files changed, 32 insertions, 22 deletions
diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp
index 031c1db7e2..542ecf8b42 100644
--- a/indra/newview/llpanelprofile.cpp
+++ b/indra/newview/llpanelprofile.cpp
@@ -217,6 +217,8 @@ void request_avatar_properties_coro(std::string cap_url, LLUUID agent_id)
LLPanelProfilePicks *panel_picks = dynamic_cast<LLPanelProfilePicks*>(panel);
if (panel_picks)
{
+ // Refresh pick limit before processing
+ LLAgentPicksInfo::getInstance()->onServerRespond(&avatar_picks);
panel_picks->processProperties(&avatar_picks);
}
@@ -820,7 +822,7 @@ BOOL LLPanelProfileSecondLife::postBuild()
mGroupList = getChild<LLGroupList>("group_list");
mShowInSearchCombo = getChild<LLComboBox>("show_in_search");
mSecondLifePic = getChild<LLIconCtrl>("2nd_life_pic");
- mSecondLifePicLayout = getChild<LLPanel>("image_stack");
+ mSecondLifePicLayout = getChild<LLPanel>("image_panel");
mDescriptionEdit = getChild<LLTextEditor>("sl_description_edit");
mNotesSnippet = getChild<LLTextEditor>("notes_snippet");
mAgentActionMenuButton = getChild<LLMenuButton>("agent_actions_menu");
@@ -989,6 +991,11 @@ void LLPanelProfileSecondLife::onAvatarNameCache(const LLUUID& agent_id, const L
getChild<LLUICtrl>("user_name")->setValue(av_name.getAccountName());
}
+void LLPanelProfileSecondLife::setNotesSnippet(std::string &notes)
+{
+ mNotesSnippet->setValue(notes);
+}
+
void LLPanelProfileSecondLife::setProfileImageUploading(bool loading)
{
LLLoadingIndicator* indicator = getChild<LLLoadingIndicator>("image_upload_indicator");
@@ -1077,6 +1084,7 @@ void LLPanelProfileSecondLife::fillPartnerData(const LLAvatarData* avatar_data)
LLTextBox* partner_text_ctrl = getChild<LLTextBox>("partner_link");
if (avatar_data->partner_id.notNull())
{
+ childSetVisible("partner_layout", TRUE);
LLStringUtil::format_map_t args;
args["[LINK]"] = LLSLURL("agent", avatar_data->partner_id, "inspect").getSLURLString();
std::string partner_text = getString("partner_text", args);
@@ -1084,7 +1092,7 @@ void LLPanelProfileSecondLife::fillPartnerData(const LLAvatarData* avatar_data)
}
else
{
- partner_text_ctrl->setText(getString("no_partner_text"));
+ childSetVisible("partner_layout", FALSE);
}
}
@@ -1333,7 +1341,7 @@ void LLPanelProfileSecondLife::onCommitMenu(const LLSD& userdata)
{
LLAvatarActions::startCall(agent_id);
}
- else if (item_name == "callog")
+ else if (item_name == "chat_history")
{
LLAvatarActions::viewChatHistory(agent_id);
}
@@ -1443,7 +1451,7 @@ bool LLPanelProfileSecondLife::onEnableMenu(const LLSD& userdata)
{
return mVoiceStatus;
}
- else if (item_name == "callog")
+ else if (item_name == "chat_history")
{
return LLLogChat::isTranscriptExist(agent_id);
}
@@ -1780,6 +1788,12 @@ void LLPanelProfileFirstLife::onOpen(const LLSD& key)
{
LLPanelProfileTab::onOpen(key);
+ if (!getSelfProfile())
+ {
+ // Otherwise as the only focusable element it will be selected
+ mDescriptionEdit->setTabStop(FALSE);
+ }
+
resetData();
}
@@ -1953,24 +1967,6 @@ void LLPanelProfileNotes::onOpen(const LLSD& key)
resetData();
}
-void LLPanelProfileNotes::onCommitNotes()
-{
- std::string cap_url = gAgent.getRegionCapability(PROFILE_PROPERTIES_CAP);
- if (getIsLoaded())
- {
- if (!cap_url.empty())
- {
- std::string notes = mNotesEditor->getValue().asString();
- LLCoros::instance().launch("putAgentUserInfoCoro",
- boost::bind(put_avatar_properties_coro, cap_url, getAvatarId(), LLSD().with("notes", notes)));
- }
- else
- {
- LL_WARNS() << "Failed to update notes, no cap found" << LL_ENDL;
- }
- }
-}
-
void LLPanelProfileNotes::setNotesText(const std::string &text)
{
mSaveChanges->setEnabled(FALSE);
@@ -1993,6 +1989,20 @@ void LLPanelProfileNotes::onSaveNotesChanges()
{
LLCoros::instance().launch("putAgentUserInfoCoro",
boost::bind(put_avatar_properties_coro, cap_url, getAvatarId(), LLSD().with("notes", mCurrentNotes)));
+
+
+ LLFloater* floater_profile = LLFloaterReg::findInstance("profile", LLSD().with("id", getAvatarId()));
+ if (!floater_profile)
+ {
+ return;
+ }
+
+ LLPanel* panel = floater_profile->findChild<LLPanel>(PANEL_SECONDLIFE, TRUE);
+ LLPanelProfileSecondLife *panel_sl = dynamic_cast<LLPanelProfileSecondLife*>(panel);
+ if (panel_sl)
+ {
+ panel_sl->setNotesSnippet(mCurrentNotes);
+ }
}
else
{