summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRick Pasetto <rick@lindenlab.com>2009-12-14 17:39:24 -0800
committerRick Pasetto <rick@lindenlab.com>2009-12-14 17:39:24 -0800
commitc0eb697a53b22e266fa5437edde59395afcd2c7b (patch)
treeab616ff434982fbeb7fa186cd6f0fb71a3ebebf5
parenta38629685538099cfa62fab4a8a5fb2e2bc94f60 (diff)
Change LLViewerMedia::isInterestingEnough() to also check selection
If the object is in the selection, its interesting. Load its media data ASAP. Conceptually reviewed by monroe
-rw-r--r--indra/newview/llviewermedia.cpp15
-rw-r--r--indra/newview/llviewermedia.h2
-rw-r--r--indra/newview/llvovolume.cpp2
3 files changed, 15 insertions, 4 deletions
diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp
index 367c0c8343..103a70e032 100644
--- a/indra/newview/llviewermedia.cpp
+++ b/indra/newview/llviewermedia.cpp
@@ -561,11 +561,22 @@ bool LLViewerMedia::getInWorldMediaDisabled()
//////////////////////////////////////////////////////////////////////////////////////////
// static
-bool LLViewerMedia::isInterestingEnough(const LLUUID &object_id, const F64 &object_interest)
+bool LLViewerMedia::isInterestingEnough(const LLVOVolume *object, const F64 &object_interest)
{
bool result = false;
- if (LLViewerMediaFocus::getInstance()->getFocusedObjectID() == object_id)
+ if (NULL == object)
+ {
+ result = false;
+ }
+ // Focused? Then it is interesting!
+ else if (LLViewerMediaFocus::getInstance()->getFocusedObjectID() == object->getID())
+ {
+ result = true;
+ }
+ // Selected? Then it is interesting!
+ // XXX Sadly, 'contains()' doesn't take a const :(
+ else if (LLSelectMgr::getInstance()->getSelection()->contains(const_cast<LLVOVolume*>(object)))
{
result = true;
}
diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h
index 26b822aba6..7151186089 100644
--- a/indra/newview/llviewermedia.h
+++ b/indra/newview/llviewermedia.h
@@ -112,7 +112,7 @@ class LLViewerMedia
static void setInWorldMediaDisabled(bool disabled);
static bool getInWorldMediaDisabled();
- static bool isInterestingEnough(const LLUUID& object_id, const F64 &object_interest);
+ static bool isInterestingEnough(const LLVOVolume* object, const F64 &object_interest);
// Returns the priority-sorted list of all media impls.
static impl_list &getPriorityList();
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp
index 801bd90423..d24edacd13 100644
--- a/indra/newview/llvovolume.cpp
+++ b/indra/newview/llvovolume.cpp
@@ -139,7 +139,7 @@ public:
}
virtual bool isInterestingEnough() const
{
- return LLViewerMedia::isInterestingEnough(mObject->getID(), getMediaInterest());
+ return LLViewerMedia::isInterestingEnough(mObject, getMediaInterest());
}
virtual std::string getCapabilityUrl(const std::string &name) const