From 22985813080152c36ee9e785e46bc62a3821fb6b Mon Sep 17 00:00:00 2001
From: Rye Mutt <rye@alchemyviewer.org>
Date: Wed, 23 Mar 2022 12:48:23 -0400
Subject: [PATCH] Add support for opensim avatar picker url

---
 indra/newview/llfloateravatar.cpp | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/indra/newview/llfloateravatar.cpp b/indra/newview/llfloateravatar.cpp
index 31adf5b61e2..3203cf7816c 100644
--- a/indra/newview/llfloateravatar.cpp
+++ b/indra/newview/llfloateravatar.cpp
@@ -36,6 +36,10 @@
 #include "lluictrlfactory.h"
 #include "llmediactrl.h"
 
+#include "llagent.h"
+#include "llviewercontrol.h"
+#include "llviewerregion.h"
+#include "llweb.h"
 
 LLFloaterAvatar::LLFloaterAvatar(const LLSD& key)
 	:	LLFloater(key)
@@ -56,6 +60,18 @@ LLFloaterAvatar::~LLFloaterAvatar()
 BOOL LLFloaterAvatar::postBuild()
 {
 	enableResizeCtrls(true, true, false);
+
+	LLMediaCtrl* avatar_picker = findChild<LLMediaCtrl>("avatar_picker_contents");
+	if (avatar_picker)
+	{
+		avatar_picker->setErrorPageURL(gSavedSettings.getString("GenericErrorPageURL"));
+		if (auto* regionp = gAgent.getRegion())
+		{
+			std::string ava_url = regionp->getAvatarPickerURL();
+			ava_url = LLWeb::expandURLSubstitutions(ava_url, LLSD());
+			avatar_picker->navigateTo(ava_url, HTTP_CONTENT_TEXT_HTML);
+		}
+	}
 	return TRUE;
 }
 
-- 
GitLab