diff options
| author | AndreyL ProductEngine <alihatskiy@productengine.com> | 2019-10-15 20:39:40 +0300 | 
|---|---|---|
| committer | AndreyL ProductEngine <alihatskiy@productengine.com> | 2019-10-15 20:39:40 +0300 | 
| commit | 1f5f9d2e5964a9bcd187f730ee4c3d6a5357df19 (patch) | |
| tree | 601ed82584cbf6429be302fc034fc704a4e431e8 /indra | |
| parent | b964850141f3a749ff7551ebf871756a02d39085 (diff) | |
| parent | 7a90e71adf230f24c930a97140c19bc26f2bdcc6 (diff) | |
Downstream merge from lindenlab/viewer-serval
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/llplugin/llpluginclassmedia.cpp | 10 | ||||
| -rw-r--r-- | indra/llplugin/llpluginclassmedia.h | 4 | ||||
| -rw-r--r-- | indra/media_plugins/cef/media_plugin_cef.cpp | 19 | ||||
| -rw-r--r-- | indra/newview/VIEWER_VERSION.txt | 2 | ||||
| -rw-r--r-- | indra/newview/llmediactrl.cpp | 5 | ||||
| -rw-r--r-- | indra/newview/llpanelprimmediacontrols.cpp | 16 | ||||
| -rw-r--r-- | indra/newview/llviewermedia.cpp | 15 | ||||
| -rw-r--r-- | indra/newview/llviewermedia.h | 2 | ||||
| -rw-r--r-- | indra/newview/llviewermediafocus.cpp | 7 | ||||
| -rw-r--r-- | indra/newview/llvoavatar.cpp | 7 | 
10 files changed, 36 insertions, 51 deletions
| diff --git a/indra/llplugin/llpluginclassmedia.cpp b/indra/llplugin/llpluginclassmedia.cpp index 483a967db6..78b1483810 100644 --- a/indra/llplugin/llpluginclassmedia.cpp +++ b/indra/llplugin/llpluginclassmedia.cpp @@ -664,14 +664,12 @@ bool LLPluginClassMedia::keyEvent(EKeyEventType type, int key_code, MASK modifie  	return result;  } -void LLPluginClassMedia::scrollEvent(int x, int y, int clicks_x, int clicks_y, MASK modifiers) +void LLPluginClassMedia::scrollEvent(int x, int y, MASK modifiers)  {  	LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA, "scroll_event");  	message.setValueS32("x", x);  	message.setValueS32("y", y); -	message.setValueS32("clicks_x", clicks_x); -	message.setValueS32("clicks_y", clicks_y);  	message.setValue("modifiers", translateModifiers(modifiers));  	sendMessage(message); @@ -857,10 +855,12 @@ void LLPluginClassMedia::paste()  }  void LLPluginClassMedia::setUserDataPath(const std::string &user_data_path_cache, +										 const std::string &user_data_path_cookies,  										 const std::string &user_data_path_cef_log)  {  	LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA, "set_user_data_path");  	message.setValue("cache_path", user_data_path_cache); +	message.setValue("cookies_path", user_data_path_cookies);  	message.setValue("cef_log_file", user_data_path_cef_log);  	bool cef_verbose_log = gSavedSettings.getBOOL("CefVerboseLog"); @@ -1136,10 +1136,6 @@ void LLPluginClassMedia::receivePluginMessage(const LLPluginMessage &message)  			mDebugMessageLevel = message.getValue("message_level");  			mediaEvent(LLPluginClassMediaOwner::MEDIA_EVENT_DEBUG_MESSAGE);  		} -		else if (message_name == "tooltip_text") -		{ -			mHoverText = message.getValue("tooltip"); -		}  		else  		{  			LL_WARNS("Plugin") << "Unknown " << message_name << " class message: " << message_name << LL_ENDL; diff --git a/indra/llplugin/llpluginclassmedia.h b/indra/llplugin/llpluginclassmedia.h index 6f2b875116..4f52afb317 100644 --- a/indra/llplugin/llpluginclassmedia.h +++ b/indra/llplugin/llpluginclassmedia.h @@ -118,7 +118,7 @@ public:  	bool keyEvent(EKeyEventType type, int key_code, MASK modifiers, LLSD native_key_data); -	void scrollEvent(int x, int y, int clicks_x, int clicks_y, MASK modifiers); +	void scrollEvent(int x, int y, MASK modifiers);  	// enable/disable media plugin debugging messages and info spam  	void enableMediaPluginDebugging( bool enable ); @@ -195,7 +195,7 @@ public:  	bool	canPaste() const { return mCanPaste; };  	// These can be called before init(), and they will be queued and sent before the media init message. -	void	setUserDataPath(const std::string &user_data_path_cache, const std::string &user_data_path_cef_log); +	void	setUserDataPath(const std::string &user_data_path_cache, const std::string &user_data_path_cookies, const std::string &user_data_path_cef_log);  	void	setLanguageCode(const std::string &language_code);  	void	setPluginsEnabled(const bool enabled);  	void	setJavascriptEnabled(const bool enabled); diff --git a/indra/media_plugins/cef/media_plugin_cef.cpp b/indra/media_plugins/cef/media_plugin_cef.cpp index 88906cc9b8..8ecfc2a3d9 100644 --- a/indra/media_plugins/cef/media_plugin_cef.cpp +++ b/indra/media_plugins/cef/media_plugin_cef.cpp @@ -62,7 +62,6 @@ private:  	void onConsoleMessageCallback(std::string message, std::string source, int line);  	void onStatusMessageCallback(std::string value);  	void onTitleChangeCallback(std::string title); -	void onTooltipCallback(std::string text);  	void onLoadStartCallback();  	void onRequestExitCallback();  	void onLoadEndCallback(int httpStatusCode); @@ -97,6 +96,7 @@ private:  	bool mCanCopy;  	bool mCanPaste;  	std::string mCachePath; +	std::string mCookiePath;  	std::string mCefLogFile;  	bool mCefLogVerbose;  	std::vector<std::string> mPickedFiles; @@ -128,6 +128,7 @@ MediaPluginBase(host_send_func, host_user_data)  	mCanCopy = false;  	mCanPaste = false;  	mCachePath = ""; +	mCookiePath = "";  	mCefLogFile = "";  	mCefLogVerbose = false;  	mPickedFiles.clear(); @@ -208,12 +209,6 @@ void MediaPluginCEF::onTitleChangeCallback(std::string title)  	sendMessage(message);  } -void MediaPluginCEF::onTooltipCallback(std::string text) -{ -    LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA, "tooltip_text"); -    message.setValue("tooltip", text); -    sendMessage(message); -}  ////////////////////////////////////////////////////////////////////////////////  //  void MediaPluginCEF::onLoadStartCallback() @@ -505,7 +500,6 @@ void MediaPluginCEF::receiveMessage(const char* message_string)  				mCEFLib->setOnConsoleMessageCallback(std::bind(&MediaPluginCEF::onConsoleMessageCallback, this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3));  				mCEFLib->setOnStatusMessageCallback(std::bind(&MediaPluginCEF::onStatusMessageCallback, this, std::placeholders::_1));  				mCEFLib->setOnTitleChangeCallback(std::bind(&MediaPluginCEF::onTitleChangeCallback, this, std::placeholders::_1)); -				mCEFLib->setOnTooltipCallback(std::bind(&MediaPluginCEF::onTooltipCallback, this, std::placeholders::_1));  				mCEFLib->setOnLoadStartCallback(std::bind(&MediaPluginCEF::onLoadStartCallback, this));  				mCEFLib->setOnLoadEndCallback(std::bind(&MediaPluginCEF::onLoadEndCallback, this, std::placeholders::_1));  				mCEFLib->setOnLoadErrorCallback(std::bind(&MediaPluginCEF::onLoadError, this, std::placeholders::_1, std::placeholders::_2)); @@ -522,6 +516,7 @@ void MediaPluginCEF::receiveMessage(const char* message_string)  				settings.background_color = 0xffffffff;  				settings.cache_enabled = true;  				settings.cache_path = mCachePath; +				settings.cookie_store_path = mCookiePath;  				settings.cookies_enabled = mCookiesEnabled;  				settings.disable_gpu = mDisableGPU;  				settings.flash_enabled = mPluginsEnabled; @@ -576,6 +571,7 @@ void MediaPluginCEF::receiveMessage(const char* message_string)  				std::string user_data_path_cookies = message_in.getValue("cookies_path");  				mCachePath = user_data_path_cache + "cef_cache"; +				mCookiePath = user_data_path_cookies + "cef_cookies";  				mCefLogFile = message_in.getValue("cef_log_file");  				mCefLogVerbose = message_in.getValueBoolean("cef_verbose_log");  			} @@ -676,13 +672,10 @@ void MediaPluginCEF::receiveMessage(const char* message_string)  			{  				S32 x = message_in.getValueS32("x");  				S32 y = message_in.getValueS32("y"); -				S32 delta_x = message_in.getValueS32("clicks_x"); -				S32 delta_y = message_in.getValueS32("clicks_y");  				const int scaling_factor = 40; -				delta_x *= -scaling_factor; -				delta_y *= -scaling_factor; +				y *= -scaling_factor; -				mCEFLib->mouseWheel(x, y, delta_x, delta_y); +				mCEFLib->mouseWheel(x, y);  			}  			else if (message_name == "text_event")  			{ diff --git a/indra/newview/VIEWER_VERSION.txt b/indra/newview/VIEWER_VERSION.txt index 91e4a9f262..7849b73dc7 100644 --- a/indra/newview/VIEWER_VERSION.txt +++ b/indra/newview/VIEWER_VERSION.txt @@ -1 +1 @@ -6.3.2 +6.3.3 diff --git a/indra/newview/llmediactrl.cpp b/indra/newview/llmediactrl.cpp index 6cab9b9e99..b7947288c6 100644 --- a/indra/newview/llmediactrl.cpp +++ b/indra/newview/llmediactrl.cpp @@ -202,10 +202,7 @@ BOOL LLMediaCtrl::handleScrollWheel( S32 x, S32 y, S32 clicks )  {  	if (LLPanel::handleScrollWheel(x, y, clicks)) return TRUE;  	if (mMediaSource && mMediaSource->hasMedia()) -	{ -		convertInputCoords(x, y); -		mMediaSource->scrollWheel(x, y, 0, clicks, gKeyboard->currentMask(TRUE)); -	} +		mMediaSource->getMediaPlugin()->scrollEvent(0, clicks, gKeyboard->currentMask(TRUE));  	return TRUE;  } diff --git a/indra/newview/llpanelprimmediacontrols.cpp b/indra/newview/llpanelprimmediacontrols.cpp index c74c2e0fd8..5f413fc3c0 100644 --- a/indra/newview/llpanelprimmediacontrols.cpp +++ b/indra/newview/llpanelprimmediacontrols.cpp @@ -547,17 +547,17 @@ void LLPanelPrimMediaControls::updateShape()  			switch (mScrollState)   			{  				case SCROLL_UP: -					media_impl->scrollWheel(0, 0, 0, -1, MASK_NONE); +					media_impl->scrollWheel(0, -1, MASK_NONE);  					break;  				case SCROLL_DOWN: -					media_impl->scrollWheel(0, 0, 0, 1, MASK_NONE); +					media_impl->scrollWheel(0, 1, MASK_NONE);  					break;  				case SCROLL_LEFT: -					media_impl->scrollWheel(0, 0, 1, 0, MASK_NONE); +					media_impl->scrollWheel(1, 0, MASK_NONE);  					//				media_impl->handleKeyHere(KEY_LEFT, MASK_NONE);  					break;  				case SCROLL_RIGHT: -					media_impl->scrollWheel(0, 0, -1, 0, MASK_NONE); +					media_impl->scrollWheel(-1, 0, MASK_NONE);  					//				media_impl->handleKeyHere(KEY_RIGHT, MASK_NONE);  					break;  				case SCROLL_NONE: @@ -1134,7 +1134,7 @@ void LLPanelPrimMediaControls::onScrollUp(void* user_data)  	if(impl)  	{ -		impl->scrollWheel(0, 0, 0, -1, MASK_NONE); +		impl->scrollWheel(0, -1, MASK_NONE);  	}  }  void LLPanelPrimMediaControls::onScrollUpHeld(void* user_data) @@ -1151,7 +1151,7 @@ void LLPanelPrimMediaControls::onScrollRight(void* user_data)  	if(impl)  	{ -		impl->scrollWheel(0, 0, -1, 0, MASK_NONE); +		impl->scrollWheel(-1, 0, MASK_NONE);  //		impl->handleKeyHere(KEY_RIGHT, MASK_NONE);  	}  } @@ -1170,7 +1170,7 @@ void LLPanelPrimMediaControls::onScrollLeft(void* user_data)  	if(impl)  	{ -		impl->scrollWheel(0, 0, 1, 0, MASK_NONE); +		impl->scrollWheel(1, 0, MASK_NONE);  //		impl->handleKeyHere(KEY_LEFT, MASK_NONE);  	}  } @@ -1189,7 +1189,7 @@ void LLPanelPrimMediaControls::onScrollDown(void* user_data)  	if(impl)  	{ -		impl->scrollWheel(0, 0, 0, 1, MASK_NONE); +		impl->scrollWheel(0, 1, MASK_NONE);  	}  }  void LLPanelPrimMediaControls::onScrollDownHeld(void* user_data) diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index c97a42bf06..2365f050b3 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -1739,10 +1739,12 @@ LLPluginClassMedia* LLViewerMediaImpl::newSourceFromMediaType(std::string media_  		std::string launcher_name = gDirUtilp->getLLPluginLauncher();  		std::string plugin_name = gDirUtilp->getLLPluginFilename(plugin_basename); -		// cookies now are stored in the CEF cache directory too (no more control over their location)  		std::string user_data_path_cache = gDirUtilp->getCacheDir(false);  		user_data_path_cache += gDirUtilp->getDirDelimiter(); +		std::string user_data_path_cookies = gDirUtilp->getOSUserAppDir(); +		user_data_path_cookies += gDirUtilp->getDirDelimiter(); +  		std::string user_data_path_cef_log = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, "cef_log.txt");  		// Fix for EXT-5960 - make browser profile specific to user (cache, cookies etc.) @@ -1753,9 +1755,8 @@ LLPluginClassMedia* LLViewerMediaImpl::newSourceFromMediaType(std::string media_  		std::string linden_user_dir = gDirUtilp->getLindenUserDir();  		if ( ! linden_user_dir.empty() )  		{ -			// cookies now are stored in the CEF cache directory too (no more control over their location) -			user_data_path_cache = linden_user_dir; -			user_data_path_cache += gDirUtilp->getDirDelimiter(); +			user_data_path_cookies = linden_user_dir; +			user_data_path_cookies += gDirUtilp->getDirDelimiter();  		};  		// See if the plugin executable exists @@ -1774,7 +1775,7 @@ LLPluginClassMedia* LLViewerMediaImpl::newSourceFromMediaType(std::string media_  		{  			media_source = new LLPluginClassMedia(owner);  			media_source->setSize(default_width, default_height); -			media_source->setUserDataPath(user_data_path_cache, user_data_path_cef_log); +			media_source->setUserDataPath(user_data_path_cache, user_data_path_cookies, user_data_path_cef_log);  			media_source->setLanguageCode(LLUI::getLanguage());  			media_source->setZoomFactor(zoom_factor); @@ -2316,14 +2317,14 @@ void LLViewerMediaImpl::mouseDoubleClick(S32 x, S32 y, MASK mask, S32 button)  }  ////////////////////////////////////////////////////////////////////////////////////////// -void LLViewerMediaImpl::scrollWheel(S32 x, S32 y, S32 scroll_x, S32 scroll_y, MASK mask) +void LLViewerMediaImpl::scrollWheel(S32 x, S32 y, MASK mask)  {  	scaleMouse(&x, &y);  	mLastMouseX = x;  	mLastMouseY = y;  	if (mMediaSource)  	{ -		mMediaSource->scrollEvent(x, y, scroll_x, scroll_y, mask); +		mMediaSource->scrollEvent(x, y, mask);  	}  } diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h index 9896399774..b25358ae6c 100644 --- a/indra/newview/llviewermedia.h +++ b/indra/newview/llviewermedia.h @@ -229,7 +229,7 @@ public:  	void mouseMove(const LLVector2& texture_coords, MASK mask);      void mouseDoubleClick(const LLVector2& texture_coords, MASK mask);      void mouseDoubleClick(S32 x, S32 y, MASK mask, S32 button = 0); -	void scrollWheel(S32 x, S32 y, S32 scroll_x, S32 scroll_y, MASK mask); +	void scrollWheel(S32 x, S32 y, MASK mask);  	void mouseCapture();  	void navigateBack(); diff --git a/indra/newview/llviewermediafocus.cpp b/indra/newview/llviewermediafocus.cpp index b86d678196..59165c1d71 100644 --- a/indra/newview/llviewermediafocus.cpp +++ b/indra/newview/llviewermediafocus.cpp @@ -377,7 +377,12 @@ BOOL LLViewerMediaFocus::handleScrollWheel(S32 x, S32 y, S32 clicks)  	LLViewerMediaImpl* media_impl = getFocusedMediaImpl();  	if(media_impl && media_impl->hasMedia())  	{ -		media_impl->scrollWheel(x, y, 0, clicks, gKeyboard->currentMask(TRUE)); +        // the scrollEvent() API's x and y are not the same as handleScrollWheel's x and y. +        // The latter is the position of the mouse at the time of the event +        // The former is the 'scroll amount' in x and y, respectively. +        // All we have for 'scroll amount' here is 'clicks'. +		// We're also not passed the keyboard modifier mask, but we can get that from gKeyboard. +		media_impl->getMediaPlugin()->scrollEvent(0, clicks, gKeyboard->currentMask(TRUE));  		retval = TRUE;  	}  	return retval; diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 37ad7a53a8..e42a7269b4 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -7334,13 +7334,6 @@ void LLVOAvatar::sitOnObject(LLViewerObject *sit_object)                  if (root_object == sit_object)                  {                      LLFloaterTools::sPreviousFocusOnAvatar = true; -                    if (!gSavedSettings.getBOOL("EditCameraMovement")) -                    { -                        // always freeze camera in space, even if camera doesn't move -                        // so, for example, follow cam scripts can't affect you when in build mode -                        gAgentCamera.setFocusGlobal(gAgentCamera.calcFocusPositionTargetGlobal(), LLUUID::null); -                        gAgentCamera.setFocusOnAvatar(FALSE, ANIMATE); -                    }                  }              }          } | 
