Restore online status in profiles

meow-7.2.2
Ansariel 2022-04-20 15:35:21 +02:00
parent bca1892803
commit ab0fb9f839
3 changed files with 37 additions and 1 deletions

View File

@ -844,6 +844,11 @@ BOOL LLPanelProfileSecondLife::postBuild()
mSeeOnMapToggle = getChild<LLButton>("allow_to_see_on_map");
mEditObjectsToggle = getChild<LLButton>("allow_edit_my_objects");
// <FS:Ansariel> Undo LL dumb-down junk
mStatusText = getChild<LLTextBox>("status");
mStatusText->setVisible(FALSE);
// </FS:Ansariel>
mShowInSearchCombo->setCommitCallback([this](LLUICtrl*, void*) { onShowInSearchCallback(); }, nullptr);
mGroupList->setDoubleClickCallback([this](LLUICtrl*, S32 x, S32 y, MASK mask) { LLPanelProfileSecondLife::openGroupProfile(); });
mGroupList->setReturnCallback([this](LLUICtrl*, const LLSD&) { LLPanelProfileSecondLife::openGroupProfile(); });
@ -950,6 +955,8 @@ void LLPanelProfileSecondLife::resetData()
mSeeOnMapToggle->setToggleState(false);
mEditObjectsToggle->setToggleState(false);
childSetVisible("permissions_panel", false);
mStatusText->setVisible(FALSE); // <FS:Ansariel> Undo LL dumb-down junk
}
void LLPanelProfileSecondLife::processProfileProperties(const LLAvatarData* avatar_data)
@ -1307,6 +1314,16 @@ void LLPanelProfileSecondLife::updateOnlineStatus()
void LLPanelProfileSecondLife::processOnlineStatus(bool online)
{
// <FS:Ansariel> Undo LL dumb-down junk
mStatusText->setVisible(isGrantedToSeeOnlineStatus());
std::string status = getString(online ? "status_online" : "status_offline");
mStatusText->setValue(status);
mStatusText->setColor(online ?
LLUIColorTable::instance().getColor("StatusUserOnline") :
LLUIColorTable::instance().getColor("StatusUserOffline"));
// </FS:Ansariel>
}
void LLPanelProfileSecondLife::setLoaded()

View File

@ -178,6 +178,7 @@ private:
group_map_t mGroups;
void openGroupProfile();
LLTextBox* mStatusText; // <FS:Ansariel> Undo LL dumb-down junk
LLGroupList* mGroupList;
LLComboBox* mShowInSearchCombo;
LLIconCtrl* mSecondLifePic;
@ -189,7 +190,6 @@ private:
LLButton* mSeeOnlineToggle;
LLButton* mSeeOnMapToggle;
LLButton* mEditObjectsToggle;
LLMenuButton* mOverflowButton; // <FS:Ansariel> Gear button
LLHandle<LLFloater> mFloaterPermissionsHandle;

View File

@ -9,6 +9,14 @@
follows="all"
layout="topleft"
>
<string
name="status_online">
Online
</string>
<string
name="status_offline">
Offline
</string>
<string
name="AgeFormat">
Born on: [REG_DATE]
@ -147,6 +155,7 @@ Account: [ACCTTYPE]
follows="left|top|right"
layout="topleft"
translate="false"
icon_positioning="left"
use_ellipses="true" />
<text
@ -184,6 +193,16 @@ Account: [ACCTTYPE]
image_pressed_selected="DropDown_Press"
image_disabled="DropDown_Disabled"
name="agent_actions_menu" />
<text
name="status"
halign="center"
bottom="-4"
width="50"
right="-1"
height="16"
follows="right|bottom"
layout="topleft"/>
</layout_panel>
<layout_panel