diff options
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/llmediactrl.cpp | 24 | 
1 files changed, 14 insertions, 10 deletions
| diff --git a/indra/newview/llmediactrl.cpp b/indra/newview/llmediactrl.cpp index 3c34d26692..501a137b42 100644 --- a/indra/newview/llmediactrl.cpp +++ b/indra/newview/llmediactrl.cpp @@ -982,16 +982,20 @@ void LLMediaCtrl::onClickLinkHref( LLPluginClassMedia* self )  	U32 target_type = self->getClickTargetType();  	// is there is a target specified for the link? -	if (gSavedSettings.getBOOL("UseExternalBrowser") || target_type == LLPluginClassMedia::TARGET_EXTERNAL) +	if (target_type == LLPluginClassMedia::TARGET_EXTERNAL || +		target_type == LLPluginClassMedia::TARGET_BLANK )  	{ -		LLSD payload; -		payload["url"] = url; -		payload["target_type"] = LLSD::Integer(target_type); -		LLNotificationsUtil::add( "WebLaunchExternalTarget", LLSD(), payload, onClickLinkExternalTarget); -	} -	else if (target_type == LLPluginClassMedia::TARGET_BLANK) -	{ -		clickLinkWithTarget(url, target_type); +		if (gSavedSettings.getBOOL("UseExternalBrowser")) +		{ +			LLSD payload; +			payload["url"] = url; +			payload["target_type"] = LLSD::Integer(target_type); +			LLNotificationsUtil::add( "WebLaunchExternalTarget", LLSD(), payload, onClickLinkExternalTarget); +		} +		else +		{ +			clickLinkWithTarget(url, target_type); +		}  	}  	else {  		const std::string protocol1( "http://" ); @@ -1042,7 +1046,7 @@ bool LLMediaCtrl::onClickLinkExternalTarget(const LLSD& notification, const LLSD  // static   void LLMediaCtrl::clickLinkWithTarget(const std::string& url, const S32& target_type )  { -	if (gSavedSettings.getBOOL("UseExternalBrowser") || target_type == LLPluginClassMedia::TARGET_EXTERNAL) +	if (target_type == LLPluginClassMedia::TARGET_EXTERNAL)  	{  		// load target in an external browser  		LLWeb::loadURLExternal(url); | 
