diff options
Diffstat (limited to 'indra/newview')
-rw-r--r-- | indra/newview/lltoolpie.cpp | 40 | ||||
-rw-r--r-- | indra/newview/tests/lllogininstance_test.cpp | 4 | ||||
-rw-r--r-- | indra/newview/tests/llviewerhelputil_test.cpp | 2 |
3 files changed, 26 insertions, 20 deletions
diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp index 39e71974fd..bf1e307d71 100644 --- a/indra/newview/lltoolpie.cpp +++ b/indra/newview/lltoolpie.cpp @@ -910,16 +910,19 @@ BOOL LLToolPie::handleTooltipObject( LLViewerObject* hover_object, std::string l tooltip_msg.append( nodep->mName ); } + bool has_media = false; bool is_time_based_media = false; bool is_web_based_media = false; bool is_media_playing = false; + bool is_media_displaying = false; // Does this face have media? const LLTextureEntry* tep = hover_object->getTE(mHoverPick.mObjectFace); if(tep) { - const LLMediaEntry* mep = tep->hasMedia() ? tep->getMediaData() : NULL; + has_media = tep->hasMedia(); + const LLMediaEntry* mep = has_media ? tep->getMediaData() : NULL; if (mep) { viewer_media_t media_impl = LLViewerMedia::getMediaImplFromTextureID(mep->getMediaID()); @@ -927,33 +930,38 @@ BOOL LLToolPie::handleTooltipObject( LLViewerObject* hover_object, std::string l if (media_impl.notNull() && (media_impl->hasMedia())) { + is_media_displaying = true; LLStringUtil::format_map_t args; media_plugin = media_impl->getMediaPlugin(); if(media_plugin) - { if(media_plugin->pluginSupportsMediaTime()) - { - is_time_based_media = true; - is_web_based_media = false; - //args["[CurrentURL]"] = media_impl->getMediaURL(); - is_media_playing = media_impl->isMediaPlaying(); - } - else - { - is_time_based_media = false; - is_web_based_media = true; - //args["[CurrentURL]"] = media_plugin->getLocation(); - } + { + if(media_plugin->pluginSupportsMediaTime()) + { + is_time_based_media = true; + is_web_based_media = false; + //args["[CurrentURL]"] = media_impl->getMediaURL(); + is_media_playing = media_impl->isMediaPlaying(); + } + else + { + is_time_based_media = false; + is_web_based_media = true; + //args["[CurrentURL]"] = media_plugin->getLocation(); + } //tooltip_msg.append(LLTrans::getString("CurrentURL", args)); } } } } + // Avoid showing tip over media that's displaying // also check the primary node since sometimes it can have an action even though // the root node doesn't - bool needs_tip = needs_tooltip(nodep) || - needs_tooltip(LLSelectMgr::getInstance()->getPrimaryHoverNode()); + bool needs_tip = !is_media_displaying && + (has_media || + needs_tooltip(nodep) || + needs_tooltip(LLSelectMgr::getInstance()->getPrimaryHoverNode())); if (show_all_object_tips || needs_tip) { diff --git a/indra/newview/tests/lllogininstance_test.cpp b/indra/newview/tests/lllogininstance_test.cpp index 7b28a3b72c..f7ac5361c5 100644 --- a/indra/newview/tests/lllogininstance_test.cpp +++ b/indra/newview/tests/lllogininstance_test.cpp @@ -56,9 +56,9 @@ void LLLogin::disconnect() //----------------------------------------------------------------------------- #include "../llviewernetwork.h" -unsigned char gMACAddress[MAC_ADDRESS_BYTES] = {'1','2','3','4','5','6'}; /* Flawfinder: ignore */ +unsigned char gMACAddress[MAC_ADDRESS_BYTES] = {'1','2','3','4','5','6'}; -LLViewerLogin::LLViewerLogin() {} +LLViewerLogin::LLViewerLogin() : mGridChoice(GRID_INFO_NONE) {} LLViewerLogin::~LLViewerLogin() {} void LLViewerLogin::getLoginURIs(std::vector<std::string>& uris) const { diff --git a/indra/newview/tests/llviewerhelputil_test.cpp b/indra/newview/tests/llviewerhelputil_test.cpp index 297d98ad8d..dd61ac6ae5 100644 --- a/indra/newview/tests/llviewerhelputil_test.cpp +++ b/indra/newview/tests/llviewerhelputil_test.cpp @@ -87,8 +87,6 @@ public: __attribute__ ((noinline)) #endif BOOL isGodlike() const { return FALSE; } -private: - int dummy; }; LLAgent gAgent; |