summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2026-09-09 07:43:35 +0800
committerErik Kundiman <erik@megapahit.org>2026-09-09 07:43:35 +0800
commitd7ab9fd8c75655b14c0d01815e431eb441c641ed (patch)
treea9752b829f0d740de1eb89256c469bd9a1291184 /indra
parent11cab7b55c64bdc59d0780aacd853e5c12d6adab (diff)
parent802549fe8cb9c3898f9d100438a1be04ae07d685 (diff)
Merge branch 'main' into 26.4
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/FixBundle.cmake.in4
-rw-r--r--indra/newview/FixPackage.cmake.in4
-rw-r--r--indra/newview/SignBundle.cmake.in2
-rw-r--r--indra/newview/SignPackage.cmake.in2
-rw-r--r--indra/newview/llavatarpropertiesprocessor.cpp3
-rw-r--r--indra/newview/llgroupcolormap.cpp5
-rw-r--r--indra/newview/llgroupcolormap.h2
-rw-r--r--indra/newview/llpanelprofile.cpp4
-rw-r--r--indra/newview/llvoavatar.cpp4
-rw-r--r--indra/newview/skins/default/xui/en/menu_profile_other.xml8
-rw-r--r--indra/newview/skins/default/xui/en/menu_viewer.xml6
11 files changed, 34 insertions, 10 deletions
diff --git a/indra/newview/FixBundle.cmake.in b/indra/newview/FixBundle.cmake.in
index 3dbe4cc8be..40593720fc 100644
--- a/indra/newview/FixBundle.cmake.in
+++ b/indra/newview/FixBundle.cmake.in
@@ -174,9 +174,9 @@ execute_process(
COMMAND lipo libbz2.1.0.8.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
-output libbz2.1.0.8.dylib
- COMMAND lipo libexpat.1.12.3.dylib
+ COMMAND lipo libexpat.1.12.4.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
- -output libexpat.1.12.3.dylib
+ -output libexpat.1.12.4.dylib
COMMAND lipo libfreetype.6.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
-output libfreetype.6.dylib
diff --git a/indra/newview/FixPackage.cmake.in b/indra/newview/FixPackage.cmake.in
index 26898a34d5..d7a854e841 100644
--- a/indra/newview/FixPackage.cmake.in
+++ b/indra/newview/FixPackage.cmake.in
@@ -174,9 +174,9 @@ execute_process(
COMMAND lipo libbz2.1.0.8.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
-output libbz2.1.0.8.dylib
- COMMAND lipo libexpat.1.12.3.dylib
+ COMMAND lipo libexpat.1.12.4.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
- -output libexpat.1.12.3.dylib
+ -output libexpat.1.12.4.dylib
COMMAND lipo libfreetype.6.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
-output libfreetype.6.dylib
diff --git a/indra/newview/SignBundle.cmake.in b/indra/newview/SignBundle.cmake.in
index 10446d7f52..b8f88e0106 100644
--- a/indra/newview/SignBundle.cmake.in
+++ b/indra/newview/SignBundle.cmake.in
@@ -24,7 +24,7 @@ execute_process(
Frameworks/libbrotlidec.1.2.0.dylib
Frameworks/libbz2.1.0.8.dylib
Frameworks/libdiscord_partner_sdk.dylib
- Frameworks/libexpat.1.12.3.dylib
+ Frameworks/libexpat.1.12.4.dylib
Frameworks/libfreetype.6.dylib
Frameworks/libhunspell-1.7.0.dylib
Frameworks/libiconv.2.dylib
diff --git a/indra/newview/SignPackage.cmake.in b/indra/newview/SignPackage.cmake.in
index 2350735f78..a3aeb0dec6 100644
--- a/indra/newview/SignPackage.cmake.in
+++ b/indra/newview/SignPackage.cmake.in
@@ -24,7 +24,7 @@ execute_process(
Frameworks/libbrotlidec.1.2.0.dylib
Frameworks/libbz2.1.0.8.dylib
Frameworks/libdiscord_partner_sdk.dylib
- Frameworks/libexpat.1.12.3.dylib
+ Frameworks/libexpat.1.12.4.dylib
Frameworks/libfreetype.6.dylib
Frameworks/libhunspell-1.7.0.dylib
Frameworks/libiconv.2.dylib
diff --git a/indra/newview/llavatarpropertiesprocessor.cpp b/indra/newview/llavatarpropertiesprocessor.cpp
index aa24c69831..cc3f1128ed 100644
--- a/indra/newview/llavatarpropertiesprocessor.cpp
+++ b/indra/newview/llavatarpropertiesprocessor.cpp
@@ -34,6 +34,7 @@
#include "lldateutil.h"
#include "llviewergenericmessage.h"
#include "llstartup.h"
+#include "llgroupcolormap.h"
// Linden library includes
#include "llavataractions.h" // for getProfileUrl
@@ -534,6 +535,8 @@ void LLAvatarPropertiesProcessor::processAvatarGroupsReply(LLMessageSystem* msg,
LL_DEBUGS("AvatarProperties") << "Received AvatarGroupsReply for "
<< avatar_groups.avatar_id << LL_ENDL;
+ if (!LLGroupColorMap::getInstance()->hasAnyGroupColor()) return;
+
S32 group_count = msg->getNumberOfBlocksFast(_PREHASH_GroupData);
for (S32 i = 0; i < group_count; ++i)
{
diff --git a/indra/newview/llgroupcolormap.cpp b/indra/newview/llgroupcolormap.cpp
index 36fde1ce38..23690d304b 100644
--- a/indra/newview/llgroupcolormap.cpp
+++ b/indra/newview/llgroupcolormap.cpp
@@ -56,6 +56,11 @@ LLColor4 LLGroupColorMap::getGroupColor(const LLUUID& group_id) const
return LLColor4::transparent;
}
+bool LLGroupColorMap::hasAnyGroupColor() const
+{
+ return !mColors.empty();
+}
+
bool LLGroupColorMap::hasGroupColor(const LLUUID& group_id) const
{
if (group_id.isNull())
diff --git a/indra/newview/llgroupcolormap.h b/indra/newview/llgroupcolormap.h
index d6f661c43a..a4cf9d17e0 100644
--- a/indra/newview/llgroupcolormap.h
+++ b/indra/newview/llgroupcolormap.h
@@ -40,6 +40,8 @@ public:
/** Return the tint for @p group_id, or LLColor4::transparent if none. */
LLColor4 getGroupColor(const LLUUID& group_id) const;
+ bool hasAnyGroupColor() const;
+
/** True if a non-transparent color is stored for this group. */
bool hasGroupColor(const LLUUID& group_id) const;
diff --git a/indra/newview/llpanelprofile.cpp b/indra/newview/llpanelprofile.cpp
index 3d8e5575ae..9402facb2a 100644
--- a/indra/newview/llpanelprofile.cpp
+++ b/indra/newview/llpanelprofile.cpp
@@ -1440,6 +1440,10 @@ void LLPanelProfileSecondLife::onCommitMenu(const LLSD& userdata)
{
LLAvatarActions::startIM(agent_id);
}
+ else if (item_name == "view_profile")
+ {
+ LLAvatarActions::showProfile(agent_id);
+ }
else if (item_name == "offer_teleport")
{
LLAvatarActions::offerTeleport(agent_id);
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index 22eb5d8b80..326164f523 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -3707,7 +3707,7 @@ void LLVOAvatar::idleUpdateNameTagText(bool new_name)
// and we can discover the active group UUID. We register ourselves as an
// observer for APT_GROUPS in processProperties() below.
const std::string new_title = title ? title->getString() : "";
- if (!isSelf() && new_title != mTitle)
+ if (LLGroupColorMap::getInstance()->hasAnyGroupColor() && !isSelf() && new_title != mTitle)
{
// Reset cached group UUID - it will be repopulated by the reply.
mActiveGroupID.setNull();
@@ -3955,6 +3955,8 @@ LLColor4 LLVOAvatar::getNameTagColor(bool is_friend)
LLColor4 base_color = LLUIColorTable::getInstance()->getColor(color_name);
+ if (!LLGroupColorMap::getInstance()->hasAnyGroupColor()) return base_color;
+
// Group-based nameplate tinting: override with the group color if one is set.
// For self, the active group UUID is always available via gAgent.
// For others, it is populated asynchronously via AvatarGroupsReply.
diff --git a/indra/newview/skins/default/xui/en/menu_profile_other.xml b/indra/newview/skins/default/xui/en/menu_profile_other.xml
index a505b38087..8ea972f369 100644
--- a/indra/newview/skins/default/xui/en/menu_profile_other.xml
+++ b/indra/newview/skins/default/xui/en/menu_profile_other.xml
@@ -3,6 +3,14 @@
layout="topleft"
name="Avatar Profile Menu">
<menu_item_call
+ label="View Profile"
+ layout="topleft"
+ name="view_profile">
+ <menu_item_call.on_click
+ function="Profile.Commit"
+ parameter="view_profile"/>
+ </menu_item_call>
+ <menu_item_call
label="IM"
layout="topleft"
name="im">
diff --git a/indra/newview/skins/default/xui/en/menu_viewer.xml b/indra/newview/skins/default/xui/en/menu_viewer.xml
index a6dc96ff2c..cf8f7be7b5 100644
--- a/indra/newview/skins/default/xui/en/menu_viewer.xml
+++ b/indra/newview/skins/default/xui/en/menu_viewer.xml
@@ -724,8 +724,7 @@
</menu_item_call>
<menu_item_check
label="Search..."
- name="Search"
- shortcut="control|F">
+ name="Search">
<menu_item_check.on_check
function="Floater.Visible"
parameter="search" />
@@ -734,7 +733,8 @@
</menu_item_check>
<menu_item_call
label="Legacy Search..."
- name="LegacySearch">
+ name="LegacySearch"
+ shortcut="control|F">
<menu_item_call.on_click
function="Floater.Toggle"
parameter="legacy_search" />