From d2f9e34598621f1dabad15025417efd6b81dddf0 Mon Sep 17 00:00:00 2001 From: James Cook Date: Tue, 23 Mar 2010 11:41:33 -0700 Subject: Part DEV-47695 route display name changes via sim for rebroadcast to nearby avatars for name tag updates and to update cached display name for LSL nonblocking functions --- indra/newview/llviewerregion.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llviewerregion.cpp') diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index ce627494c8..8f43b6bcf7 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -1495,6 +1495,7 @@ void LLViewerRegion::setSeedCapability(const std::string& url) capabilityNames.append("SendUserReport"); capabilityNames.append("SendUserReportWithScreenshot"); capabilityNames.append("ServerReleaseNotes"); + capabilityNames.append("SetDisplayName"); capabilityNames.append("StartGroupProposal"); capabilityNames.append("TextureStats"); capabilityNames.append("UntrustedSimulatorMessage"); -- cgit v1.2.3 From 4218819951a5caa1499e79d8bd4f1bf08fe3b3cc Mon Sep 17 00:00:00 2001 From: James Cook Date: Thu, 15 Apr 2010 16:22:15 -0700 Subject: DEV-47529 Viewer looks up display names via a sim cap Squire asked me to route display name lookups via a simulator capability using HTTP GET. This buys us authentication until the data services team can implement a public-facing authenticating web service for People API. --- indra/newview/llviewerregion.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'indra/newview/llviewerregion.cpp') diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index 8f43b6bcf7..2b907ee24a 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -34,7 +34,9 @@ #include "llviewerregion.h" +// linden libraries #include "indra_constants.h" +#include "llavatarnamecache.h" // name lookup cap url #include "llfloaterreg.h" #include "llmath.h" #include "llhttpclient.h" @@ -173,6 +175,19 @@ public: mRegion->showReleaseNotes(); } } + + // Avatar name lookup library needs to know who to ask + std::string name_lookup_url = mRegion->getCapability("GetDisplayNames"); + // capabilities require URLs with slashes before query params, like: + // https://:/cap//?ids= + // but the caps are granted like: + // https://:/cap/ + U32 url_size = name_lookup_url.size(); + if (url_size > 0 && name_lookup_url[url_size-1] != '/') + { + name_lookup_url += '/'; + } + LLAvatarNameCache::setNameLookupURL(name_lookup_url); if (STATE_SEED_GRANTED_WAIT == LLStartUp::getStartupState()) { @@ -1474,6 +1489,7 @@ void LLViewerRegion::setSeedCapability(const std::string& url) capabilityNames.append("ObjectMediaNavigate"); capabilityNames.append("FetchLib"); capabilityNames.append("FetchLibDescendents"); + capabilityNames.append("GetDisplayNames"); capabilityNames.append("GetTexture"); capabilityNames.append("GroupProposalBallot"); capabilityNames.append("HomeLocation"); -- cgit v1.2.3 From 69de1f4eb7cdd063bbdd7b4019a6a9799fc5dc5f Mon Sep 17 00:00:00 2001 From: James Cook Date: Fri, 16 Apr 2010 19:06:17 -0700 Subject: Accept expires timestamp as UTC datetime in LLSD --- indra/newview/llviewerregion.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'indra/newview/llviewerregion.cpp') diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index 2b907ee24a..feade68edc 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -176,6 +176,9 @@ public: } } + // JAMESDEBUG *TODO* THIS IS WRONG!!!!!!!!!!!!!!!!!!!!! + // this isn't necessarily the region the viewer is in + // Avatar name lookup library needs to know who to ask std::string name_lookup_url = mRegion->getCapability("GetDisplayNames"); // capabilities require URLs with slashes before query params, like: @@ -188,6 +191,8 @@ public: name_lookup_url += '/'; } LLAvatarNameCache::setNameLookupURL(name_lookup_url); + + llinfos << "JAMESDEBUG cap " << name_lookup_url << llendl; if (STATE_SEED_GRANTED_WAIT == LLStartUp::getStartupState()) { -- cgit v1.2.3 From d38727e47ba5d7dd449c6ba62ac6c988ac66236f Mon Sep 17 00:00:00 2001 From: James Cook Date: Mon, 19 Apr 2010 11:26:30 -0700 Subject: DEV-47529 Viewer refresh name lookup cap URL on region cross/teleport Reviewed with Kelly --- indra/newview/llviewerregion.cpp | 18 ------------------ 1 file changed, 18 deletions(-) (limited to 'indra/newview/llviewerregion.cpp') diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index feade68edc..83c5760b58 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -175,24 +175,6 @@ public: mRegion->showReleaseNotes(); } } - - // JAMESDEBUG *TODO* THIS IS WRONG!!!!!!!!!!!!!!!!!!!!! - // this isn't necessarily the region the viewer is in - - // Avatar name lookup library needs to know who to ask - std::string name_lookup_url = mRegion->getCapability("GetDisplayNames"); - // capabilities require URLs with slashes before query params, like: - // https://:/cap//?ids= - // but the caps are granted like: - // https://:/cap/ - U32 url_size = name_lookup_url.size(); - if (url_size > 0 && name_lookup_url[url_size-1] != '/') - { - name_lookup_url += '/'; - } - LLAvatarNameCache::setNameLookupURL(name_lookup_url); - - llinfos << "JAMESDEBUG cap " << name_lookup_url << llendl; if (STATE_SEED_GRANTED_WAIT == LLStartUp::getStartupState()) { -- cgit v1.2.3 From 6d1e44b0338dd2815f605a5ba6e6528932cf3ebc Mon Sep 17 00:00:00 2001 From: James Cook Date: Tue, 20 Apr 2010 14:52:09 -0700 Subject: Avatar picker requests are routed via sim capability --- indra/newview/llviewerregion.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'indra/newview/llviewerregion.cpp') diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index 83c5760b58..502fc87e41 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -1466,6 +1466,7 @@ void LLViewerRegion::setSeedCapability(const std::string& url) LLSD capabilityNames = LLSD::emptyArray(); capabilityNames.append("AttachmentResources"); + capabilityNames.append("AvatarPickerSearch"); capabilityNames.append("ChatSessionRequest"); capabilityNames.append("CopyInventoryFromNotecard"); capabilityNames.append("DispatchRegionInfo"); -- cgit v1.2.3 From 98f5fc5ff006a82cacde47de0cbb564b6e703597 Mon Sep 17 00:00:00 2001 From: James Cook Date: Thu, 22 Apr 2010 14:13:45 -0700 Subject: DEV-47529 Turn off display names if no capability from simulator, and Display name update broadcasts entire new name record to nearby viewers Display name update directly inserts new name into sim cache indra.xml has display_names_enabled setting to control cap Synchronized viewer and server versions of avatar name cache Reviewed with Ambroff --- indra/newview/llviewerregion.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'indra/newview/llviewerregion.cpp') diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index 502fc87e41..9e877bc1af 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -175,7 +175,9 @@ public: mRegion->showReleaseNotes(); } } - + + mRegion->setCapabilitiesReceived(true); + if (STATE_SEED_GRANTED_WAIT == LLStartUp::getStartupState()) { LLStartUp::setStartupState( STATE_SEED_CAP_GRANTED ); @@ -232,7 +234,8 @@ LLViewerRegion::LLViewerRegion(const U64 &handle, // LLCapabilityListener binds all the globals it expects to need at // construction time. mCapabilityListener(host.getString(), gMessageSystem, *this, - gAgent.getID(), gAgent.getSessionID()) + gAgent.getID(), gAgent.getSessionID()), + mCapabilitiesReceived(false) { mWidth = region_width_meters; mOriginGlobal = from_region_handle(handle); @@ -1557,6 +1560,16 @@ std::string LLViewerRegion::getCapability(const std::string& name) const return iter->second; } +bool LLViewerRegion::capabilitiesReceived() const +{ + return mCapabilitiesReceived; +} + +void LLViewerRegion::setCapabilitiesReceived(bool received) +{ + mCapabilitiesReceived = received; +} + void LLViewerRegion::logActiveCapabilities() const { int count = 0; -- cgit v1.2.3