diff options
| author | Callum Prentice <callum@lindenlab.com> | 2010-02-11 11:40:21 -0800 | 
|---|---|---|
| committer | Callum Prentice <callum@lindenlab.com> | 2010-02-11 11:40:21 -0800 | 
| commit | 109fd91c8b811f98aaab0dbf80884efd76e95d51 (patch) | |
| tree | f4359f520b0fa8932936894238f58ee4fd25564e /indra/newview | |
| parent | 369c58b09c963d78eae1776d0cbca32d8189cd6a (diff) | |
Fix for EXT-4961 www.slurl.com will not DnD while slurl.com will
Ccollab reviewed by Rick - http://10.1.19.90:8080/go?page=ReviewDisplay&reviewid=101
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/llslurl.cpp | 13 | ||||
| -rw-r--r-- | indra/newview/llslurl.h | 1 | 
2 files changed, 13 insertions, 1 deletions
diff --git a/indra/newview/llslurl.cpp b/indra/newview/llslurl.cpp index 3343ee88bd..e4773f99c5 100644 --- a/indra/newview/llslurl.cpp +++ b/indra/newview/llslurl.cpp @@ -40,6 +40,12 @@ const std::string LLSLURL::PREFIX_SL_HELP		= "secondlife://app.";  const std::string LLSLURL::PREFIX_SL			= "sl://";  const std::string LLSLURL::PREFIX_SECONDLIFE	= "secondlife://";  const std::string LLSLURL::PREFIX_SLURL_OLD		= "http://slurl.com/secondlife/"; + +// For DnD - even though www.slurl.com redirects to slurl.com in a browser, you can copy and drag +// text with www.slurl.com or a link explicitly pointing at www.slurl.com so testing for this +// version is required also. +const std::string LLSLURL::PREFIX_SLURL_WWW		= "http://www.slurl.com/secondlife/"; +  const std::string LLSLURL::PREFIX_SLURL			= "http://maps.secondlife.com/secondlife/";  const std::string LLSLURL::APP_TOKEN = "app/"; @@ -68,7 +74,10 @@ std::string LLSLURL::stripProtocol(const std::string& url)  	{  		stripped.erase(0, PREFIX_SLURL_OLD.length());  	} - +	else if (matchPrefix(stripped, PREFIX_SLURL_WWW)) +	{ +		stripped.erase(0, PREFIX_SLURL_WWW.length()); +	}  	return stripped;  } @@ -81,6 +90,7 @@ bool LLSLURL::isSLURL(const std::string& url)  	if (matchPrefix(url, PREFIX_SECONDLIFE))	return true;  	if (matchPrefix(url, PREFIX_SLURL))			return true;  	if (matchPrefix(url, PREFIX_SLURL_OLD))		return true; +	if (matchPrefix(url, PREFIX_SLURL_WWW))		return true;  	return false;  } @@ -91,6 +101,7 @@ bool LLSLURL::isSLURLCommand(const std::string& url)  	if (matchPrefix(url, PREFIX_SL + APP_TOKEN) ||  		matchPrefix(url, PREFIX_SECONDLIFE + "/" + APP_TOKEN) ||  		matchPrefix(url, PREFIX_SLURL + APP_TOKEN) || +		matchPrefix(url, PREFIX_SLURL_WWW + APP_TOKEN) ||  		matchPrefix(url, PREFIX_SLURL_OLD + APP_TOKEN) )  	{  		return true; diff --git a/indra/newview/llslurl.h b/indra/newview/llslurl.h index 21b32ce409..6a695e84f3 100644 --- a/indra/newview/llslurl.h +++ b/indra/newview/llslurl.h @@ -51,6 +51,7 @@ public:  	static const std::string PREFIX_SECONDLIFE;  	static const std::string PREFIX_SLURL;  	static const std::string PREFIX_SLURL_OLD; +	static const std::string PREFIX_SLURL_WWW;  	static const std::string APP_TOKEN;  | 
