summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llviewermedia.cpp16
-rw-r--r--indra/newview/llviewermedia.h2
2 files changed, 17 insertions, 1 deletions
diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp
index 636909e6f2..a1cb152e1e 100644
--- a/indra/newview/llviewermedia.cpp
+++ b/indra/newview/llviewermedia.cpp
@@ -3883,7 +3883,7 @@ bool LLViewerMediaImpl::shouldShowBasedOnClass() const
//
bool LLViewerMediaImpl::isObscured() const
{
- if (getUsedInUI() || isParcelMedia()) return false;
+ if (getUsedInUI() || isParcelMedia() || isAttachedToHUD()) return false;
LLParcel* agent_parcel = LLViewerParcelMgr::getInstance()->getAgentParcel();
if (!agent_parcel)
@@ -3899,6 +3899,20 @@ bool LLViewerMediaImpl::isObscured() const
return false;
}
+bool LLViewerMediaImpl::isAttachedToHUD() const
+{
+ std::list< LLVOVolume* >::const_iterator iter = mObjectList.begin();
+ std::list< LLVOVolume* >::const_iterator end = mObjectList.end();
+ for ( ; iter != end; iter++)
+ {
+ if ((*iter)->isHUDAttachment())
+ {
+ return true;
+ }
+ }
+ return false;
+}
+
//////////////////////////////////////////////////////////////////////////////////////////
//
bool LLViewerMediaImpl::isAttachedToAnotherAvatar() const
diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h
index b95cfd4c68..f1f42afd81 100644
--- a/indra/newview/llviewermedia.h
+++ b/indra/newview/llviewermedia.h
@@ -411,6 +411,8 @@ public:
void cancelMimeTypeProbe();
+ bool isAttachedToHUD() const;
+
// Is this media attached to an avatar *not* self
bool isAttachedToAnotherAvatar() const;