diff --git a/indra/newview/llfloaterprofile.cpp b/indra/newview/llfloaterprofile.cpp index a4a9fe8410..624075e9fd 100644 --- a/indra/newview/llfloaterprofile.cpp +++ b/indra/newview/llfloaterprofile.cpp @@ -137,6 +137,20 @@ bool LLFloaterProfile::isPickTabSelected() return mPanelProfile->isPickTabSelected(); } +void LLFloaterProfile::refreshName() +{ + if (!mNameCallbackConnection.connected()) + { + mNameCallbackConnection = LLAvatarNameCache::get(mAvatarId, boost::bind(&LLFloaterProfile::onAvatarNameCache, this, _1, _2)); + } + + LLPanelProfileSecondLife *panel = findChild("panel_profile_secondlife"); + if (panel) + { + panel->refreshName(); + } +} + void LLFloaterProfile::showClassified(const LLUUID& classified_id, bool edit) { mPanelProfile->showClassified(classified_id, edit); diff --git a/indra/newview/llfloaterprofile.h b/indra/newview/llfloaterprofile.h index 36023077d3..c2b90a1dce 100644 --- a/indra/newview/llfloaterprofile.h +++ b/indra/newview/llfloaterprofile.h @@ -49,6 +49,7 @@ public: void createPick(const LLPickData &data); void showPick(const LLUUID& pick_id = LLUUID::null); bool isPickTabSelected(); + void refreshName(); void showClassified(const LLUUID& classified_id = LLUUID::null, bool edit = false); diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp index 49ca4dda18..c94e7e75c9 100644 --- a/indra/newview/llpanelprofile.cpp +++ b/indra/newview/llpanelprofile.cpp @@ -1059,6 +1059,14 @@ void LLPanelProfileSecondLife::updateData() } } +void LLPanelProfileSecondLife::refreshName() +{ + if (!mAvatarNameCacheConnection.connected()) + { + mAvatarNameCacheConnection = LLAvatarNameCache::get(getAvatarId(), boost::bind(&LLPanelProfileSecondLife::onAvatarNameCache, this, _1, _2)); + } +} + void LLPanelProfileSecondLife::resetData() { resetLoading(); @@ -2928,6 +2936,11 @@ void LLPanelProfile::updateData() } } +void LLPanelProfile::refreshName() +{ + mPanelSecondlife->refreshName(); +} + void LLPanelProfile::createPick(const LLPickData &data) { mTabContainer->selectTabPanel(mPanelPicks); diff --git a/indra/newview/llpanelprofile.h b/indra/newview/llpanelprofile.h index 0ac11c4306..df961c8787 100644 --- a/indra/newview/llpanelprofile.h +++ b/indra/newview/llpanelprofile.h @@ -97,6 +97,7 @@ public: * Sends update data request to server. */ void updateData() override; + void refreshName(); void onAvatarNameCache(const LLUUID& agent_id, const LLAvatarName& av_name); @@ -395,6 +396,7 @@ public: BOOL postBuild() override; void updateData() override; + void refreshName(); void onOpen(const LLSD& key) override; diff --git a/indra/newview/llpanelprofilepicks.cpp b/indra/newview/llpanelprofilepicks.cpp index c80ddbe666..c2ec6e9176 100644 --- a/indra/newview/llpanelprofilepicks.cpp +++ b/indra/newview/llpanelprofilepicks.cpp @@ -492,7 +492,6 @@ LLPanelProfilePick::LLPanelProfilePick() , mRequestedId(LLUUID::null) , mLocationChanged(false) , mNewPick(false) - , mCurrentPickDescription("") , mIsEditing(false) { } @@ -612,7 +611,6 @@ void LLPanelProfilePick::onDescriptionFocusReceived() { mIsEditing = true; mPickDescription->setParseHTML(false); - setPickDesc(mCurrentPickDescription); } } @@ -647,7 +645,6 @@ void LLPanelProfilePick::processProperties(const LLPickData* pick_info) setPickName(pick_info->name); setPickDesc(pick_info->desc); setPosGlobal(pick_info->pos_global); - mCurrentPickDescription = pick_info->desc; // Send remote parcel info request to get parcel name and sim (region) name. sendParcelInfoRequest(); diff --git a/indra/newview/llpanelprofilepicks.h b/indra/newview/llpanelprofilepicks.h index 403a618a15..34407d37d5 100644 --- a/indra/newview/llpanelprofilepicks.h +++ b/indra/newview/llpanelprofilepicks.h @@ -249,8 +249,6 @@ protected: bool mNewPick; bool mIsEditing; - std::string mCurrentPickDescription; - void onDescriptionFocusReceived(); }; diff --git a/indra/newview/llviewerdisplayname.cpp b/indra/newview/llviewerdisplayname.cpp index c9e3b530fc..afd63f2766 100644 --- a/indra/newview/llviewerdisplayname.cpp +++ b/indra/newview/llviewerdisplayname.cpp @@ -32,6 +32,8 @@ #include "fsradar.h" #include "lggcontactsets.h" #include "llagent.h" +#include "llfloaterprofile.h" +#include "llfloaterreg.h" #include "llviewercontrol.h" #include "llviewerregion.h" #include "llvoavatar.h" @@ -223,12 +225,14 @@ class LLDisplayNameUpdate : public LLHTTPNode } else { - FSRadar* radar = FSRadar::getInstance(); - if (radar) - { - radar->updateName(agent_id); - } + FSRadar::getInstance()->updateName(agent_id); } + + LLFloaterProfile* profile_floater = dynamic_cast(LLFloaterReg::findInstance("profile", LLSD().with("id", agent_id))); + if (profile_floater) + { + profile_floater->refreshName(); + } } }; diff --git a/indra/newview/skins/default/xui/en/panel_profile_classified.xml b/indra/newview/skins/default/xui/en/panel_profile_classified.xml index e6a94a368f..c9e8b242d4 100644 --- a/indra/newview/skins/default/xui/en/panel_profile_classified.xml +++ b/indra/newview/skins/default/xui/en/panel_profile_classified.xml @@ -119,10 +119,10 @@ tool_tip="Click to select an image" top="0" left="0" - height="197" - width="272" + height="161" + width="260" layout="topleft" - follows="left|top|right" + follows="left|top" image_name="spacer24.tga" visible="false" /> @@ -449,7 +449,7 @@ + + Title: + + + Description: + + + Location: +