diff options
Diffstat (limited to 'indra/llplugin')
| -rw-r--r-- | indra/llplugin/llpluginclassmedia.cpp | 16 | ||||
| -rw-r--r-- | indra/llplugin/llpluginclassmedia.h | 5 | ||||
| -rw-r--r-- | indra/llplugin/llpluginclassmediaowner.h | 3 | 
3 files changed, 12 insertions, 12 deletions
| diff --git a/indra/llplugin/llpluginclassmedia.cpp b/indra/llplugin/llpluginclassmedia.cpp index 26a20cede8..57f91a57ca 100644 --- a/indra/llplugin/llpluginclassmedia.cpp +++ b/indra/llplugin/llpluginclassmedia.cpp @@ -146,6 +146,7 @@ void LLPluginClassMedia::reset()  	mClickURL.clear();  	mClickTarget.clear();  	mClickUUID.clear(); +	mStatusCode = 0;  	// media_time class  	mCurrentTime = 0.0f; @@ -1027,6 +1028,11 @@ void LLPluginClassMedia::receivePluginMessage(const LLPluginMessage &message)  			mClickTarget.clear();  			mediaEvent(LLPluginClassMediaOwner::MEDIA_EVENT_CLICK_LINK_NOFOLLOW);  		} +		else if(message_name == "navigate_error_page") +		{ +			mStatusCode = message.getValueS32("status_code"); +			mediaEvent(LLPluginClassMediaOwner::MEDIA_EVENT_NAVIGATE_ERROR_PAGE); +		}  		else if(message_name == "cookie_set")  		{  			if(mOwner) @@ -1192,16 +1198,6 @@ void LLPluginClassMedia::browse_back()  	sendMessage(message);  } -void LLPluginClassMedia::set_status_redirect(int code, const std::string &url) -{ -	LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA_BROWSER, "set_status_redirect"); - -	message.setValueS32("code", code); -	message.setValue("url", url); - -	sendMessage(message); -} -  void LLPluginClassMedia::setBrowserUserAgent(const std::string& user_agent)  {  	LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA_BROWSER, "set_user_agent"); diff --git a/indra/llplugin/llpluginclassmedia.h b/indra/llplugin/llpluginclassmedia.h index 618e928a08..a940633b88 100644 --- a/indra/llplugin/llpluginclassmedia.h +++ b/indra/llplugin/llpluginclassmedia.h @@ -199,7 +199,6 @@ public:  	void browse_reload(bool ignore_cache = false);  	void browse_forward();  	void browse_back(); -	void set_status_redirect(int code, const std::string &url);  	void setBrowserUserAgent(const std::string& user_agent);  	void proxyWindowOpened(const std::string &target, const std::string &uuid);  	void proxyWindowClosed(const std::string &uuid); @@ -232,6 +231,9 @@ public:  	// This is valid during MEDIA_EVENT_CLICK_LINK_HREF and MEDIA_EVENT_GEOMETRY_CHANGE  	std::string getClickUUID() const { return mClickUUID; }; + +	// This is valid after MEDIA_EVENT_NAVIGATE_ERROR_PAGE +	S32 getStatusCode() const { return mStatusCode; };  	// These are valid during MEDIA_EVENT_GEOMETRY_CHANGE  	S32 getGeometryX() const { return mGeometryX; }; @@ -384,6 +386,7 @@ protected:  	S32				mGeometryY;  	S32				mGeometryWidth;  	S32				mGeometryHeight; +	S32				mStatusCode;  	std::string		mAuthURL;  	std::string		mAuthRealm;  	std::string		mHoverText; diff --git a/indra/llplugin/llpluginclassmediaowner.h b/indra/llplugin/llpluginclassmediaowner.h index 42e93cc6d7..5a4fb1ce90 100644 --- a/indra/llplugin/llpluginclassmediaowner.h +++ b/indra/llplugin/llpluginclassmediaowner.h @@ -52,12 +52,13 @@ public:  		MEDIA_EVENT_STATUS_TEXT_CHANGED,	// browser has updated the status text  		MEDIA_EVENT_NAME_CHANGED,			// browser has updated the name of the media (typically <title> tag)  		MEDIA_EVENT_LOCATION_CHANGED,		// browser location (URL) has changed (maybe due to internal navagation/frames/etc) +		MEDIA_EVENT_NAVIGATE_ERROR_PAGE,	// browser navigated to a page that resulted in an HTTP error  		MEDIA_EVENT_CLICK_LINK_HREF,		// I'm not entirely sure what the semantics of these two are  		MEDIA_EVENT_CLICK_LINK_NOFOLLOW,  		MEDIA_EVENT_CLOSE_REQUEST,			// The plugin requested its window be closed (currently hooked up to javascript window.close in webkit)  		MEDIA_EVENT_PICK_FILE_REQUEST,		// The plugin wants the user to pick a file  		MEDIA_EVENT_GEOMETRY_CHANGE,		// The plugin requested its window geometry be changed (per the javascript window interface) -		 +	  		MEDIA_EVENT_PLUGIN_FAILED_LAUNCH,	// The plugin failed to launch   		MEDIA_EVENT_PLUGIN_FAILED,			// The plugin died unexpectedly | 
