Added code to support SLAPPS for Media on a Prim
Reviewed by Monroe and Callum via Code Collab (Review 143).
meow-7.2.2
skolb 2010-03-08 14:54:19 -08:00
parent 2a58e320cb
commit f39a87ef83
4 changed files with 13 additions and 13 deletions

View File

@ -80,8 +80,8 @@ LLMediaCtrl::LLMediaCtrl( const Params& p) :
mForceUpdate( false ),
mOpenLinksInExternalBrowser( false ),
mOpenLinksInInternalBrowser( false ),
mTrusted( false ),
mHomePageUrl( "" ),
mTrusted(false),
mIgnoreUIScale( true ),
mAlwaysRefresh( false ),
mMediaSource( 0 ),
@ -183,6 +183,10 @@ void LLMediaCtrl::setOpenInInternalBrowser( bool valIn )
////////////////////////////////////////////////////////////////////////////////
void LLMediaCtrl::setTrusted( bool valIn )
{
if(mMediaSource)
{
mMediaSource->setTrustedBrowser(valIn);
}
mTrusted = valIn;
}
@ -632,6 +636,7 @@ bool LLMediaCtrl::ensureMediaSourceExists()
mMediaSource->setVisible( getVisible() );
mMediaSource->addObserver( this );
mMediaSource->setBackgroundColor( getBackgroundColor() );
mMediaSource->setTrustedBrowser(mTrusted);
if(mClearCache)
{
mMediaSource->clearCache();
@ -1055,15 +1060,6 @@ void LLMediaCtrl::clickLinkWithTarget(const std::string& url, const S32& target_
}
}
////////////////////////////////////////////////////////////////////////////////
//
void LLMediaCtrl::onClickLinkNoFollow( LLPluginClassMedia* self )
{
// let the dispatcher handle blocking/throttling of SLURLs
std::string url = self->getClickURL();
LLURLDispatcher::dispatch(url, this, mTrusted);
}
////////////////////////////////////////////////////////////////////////////////
//
std::string LLMediaCtrl::getCurrentNavUrl()

View File

@ -164,7 +164,6 @@ public:
// handlers for individual events (could be done inside the switch in handleMediaEvent, they're just individual functions for clarity)
void onClickLinkHref( LLPluginClassMedia* self );
void onClickLinkNoFollow( LLPluginClassMedia* self );
protected:
void convertInputCoords(S32& x, S32& y);

View File

@ -1091,7 +1091,8 @@ LLViewerMediaImpl::LLViewerMediaImpl( const LLUUID& texture_id,
mBackgroundColor(LLColor4::white),
mNavigateSuspended(false),
mNavigateSuspendedDeferred(false),
mIsUpdated(false)
mIsUpdated(false),
mTrustedBrowser(false)
{
// Set up the mute list observer if it hasn't been set up already.
@ -2345,7 +2346,7 @@ void LLViewerMediaImpl::handleMediaEvent(LLPluginClassMedia* plugin, LLPluginCla
{
LL_DEBUGS("Media") << "MEDIA_EVENT_CLICK_LINK_NOFOLLOW, uri is: " << plugin->getClickURL() << LL_ENDL;
std::string url = plugin->getClickURL();
LLURLDispatcher::dispatch(url, NULL, false);
LLURLDispatcher::dispatch(url, NULL, mTrustedBrowser);
}
break;

View File

@ -322,6 +322,9 @@ public:
void setLowPrioritySizeLimit(int size);
void setTextureID(LLUUID id = LLUUID::null);
bool isTrustedBrowser() { return mTrustedBrowser; }
void setTrustedBrowser(bool trusted) { mTrustedBrowser = trusted; }
typedef enum
{
@ -405,6 +408,7 @@ private:
LLColor4 mBackgroundColor;
bool mNavigateSuspended;
bool mNavigateSuspendedDeferred;
bool mTrustedBrowser;
private:
BOOL mIsUpdated ;