Fixes for: MAINT-8244 Text in CEF cannot be selected with the mouse. MAINT-8245 Expose CEF log file and logging severity to viewer and MAINT-8246 Expose the CEF remote debugging system to the viewer

Fri, 26 Jan 2018 17:06:19 -0800

author
callum_linden
date
Fri, 26 Jan 2018 17:06:19 -0800
changeset 55070
29dd32b36f52
parent 55069
402ebf67388b
child 55071
591be083494b

Fixes for: MAINT-8244 Text in CEF cannot be selected with the mouse. MAINT-8245 Expose CEF log file and logging severity to viewer and MAINT-8246 Expose the CEF remote debugging system to the viewer

autobuild.xml file | annotate | diff | revisions
indra/llplugin/llpluginclassmedia.cpp file | annotate | diff | revisions
indra/llplugin/llpluginclassmedia.h file | annotate | diff | revisions
indra/media_plugins/cef/media_plugin_cef.cpp file | annotate | diff | revisions
indra/newview/app_settings/settings.xml file | annotate | diff | revisions
indra/newview/llviewermedia.cpp file | annotate | diff | revisions
     1.1 --- a/autobuild.xml	Fri Jan 26 11:54:52 2018 -0800
     1.2 +++ b/autobuild.xml	Fri Jan 26 17:06:19 2018 -0800
     1.3 @@ -556,9 +556,9 @@
     1.4              <key>archive</key>
     1.5              <map>
     1.6                <key>hash</key>
     1.7 -              <string>7ceea1aaa8681497295770d78bfd980e</string>
     1.8 +              <string>8352a71136eea487ca55784afe6bf947</string>
     1.9                <key>url</key>
    1.10 -              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/12667/75407/dullahan-1.1.1024_3.3239.1723.g071d1c1-darwin64-512020.tar.bz2</string>
    1.11 +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/12933/78534/dullahan-1.1.1035_3.3239.1723.g071d1c1-darwin64-512195.tar.bz2</string>
    1.12              </map>
    1.13              <key>name</key>
    1.14              <string>darwin64</string>
    1.15 @@ -568,9 +568,9 @@
    1.16              <key>archive</key>
    1.17              <map>
    1.18                <key>hash</key>
    1.19 -              <string>08d2b293087bedba2bca31ce7c517510</string>
    1.20 +              <string>47cb40945d649d92d3a428fdf129fa5d</string>
    1.21                <key>url</key>
    1.22 -              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/12669/75414/dullahan-1.1.1024_3.3239.1723.g071d1c1-windows-512020.tar.bz2</string>
    1.23 +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/12935/78546/dullahan-1.1.1035_3.3239.1723.g071d1c1-windows-512195.tar.bz2</string>
    1.24              </map>
    1.25              <key>name</key>
    1.26              <string>windows</string>
    1.27 @@ -580,16 +580,16 @@
    1.28              <key>archive</key>
    1.29              <map>
    1.30                <key>hash</key>
    1.31 -              <string>e3f9837d9ea2be0b162f4fce3e0118ab</string>
    1.32 +              <string>8a0bdf89bba7139f1c23ff2081584b2e</string>
    1.33                <key>url</key>
    1.34 -              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/12668/75419/dullahan-1.1.1024_3.3239.1723.g071d1c1-windows64-512020.tar.bz2</string>
    1.35 +              <string>http://automated-builds-secondlife-com.s3.amazonaws.com/ct2/12934/78543/dullahan-1.1.1035_3.3239.1723.g071d1c1-windows64-512195.tar.bz2</string>
    1.36              </map>
    1.37              <key>name</key>
    1.38              <string>windows64</string>
    1.39            </map>
    1.40          </map>
    1.41          <key>version</key>
    1.42 -        <string>1.1.1024_3.3239.1723.g071d1c1</string>
    1.43 +        <string>1.1.1035_3.3239.1723.g071d1c1</string>
    1.44        </map>
    1.45        <key>elfio</key>
    1.46        <map>
     2.1 --- a/indra/llplugin/llpluginclassmedia.cpp	Fri Jan 26 11:54:52 2018 -0800
     2.2 +++ b/indra/llplugin/llpluginclassmedia.cpp	Fri Jan 26 17:06:19 2018 -0800
     2.3 @@ -31,6 +31,9 @@
     2.4  
     2.5  #include "llpluginclassmedia.h"
     2.6  #include "llpluginmessageclasses.h"
     2.7 +#include "llcontrol.h"
     2.8 +
     2.9 +extern LLControlGroup gSavedSettings;    
    2.10  
    2.11  static int LOW_PRIORITY_TEXTURE_SIZE_DEFAULT = 256;
    2.12  
    2.13 @@ -843,11 +846,17 @@
    2.14  	sendMessage(message);
    2.15  }
    2.16  
    2.17 -void LLPluginClassMedia::setUserDataPath(const std::string &user_data_path_cache, const std::string &user_data_path_cookies)
    2.18 +void LLPluginClassMedia::setUserDataPath(const std::string &user_data_path_cache,
    2.19 +										 const std::string &user_data_path_cookies,
    2.20 +										 const std::string &user_data_path_cef_log)
    2.21  {
    2.22  	LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA, "set_user_data_path");
    2.23  	message.setValue("cache_path", user_data_path_cache);
    2.24  	message.setValue("cookies_path", user_data_path_cookies);
    2.25 +	message.setValue("cef_log_file", user_data_path_cef_log);
    2.26 +
    2.27 +	bool cef_verbose_log = gSavedSettings.getBOOL("CefVerboseLog");
    2.28 +	message.setValueBoolean("cef_verbose_log", cef_verbose_log);
    2.29  	sendMessage(message);
    2.30  }
    2.31  
     3.1 --- a/indra/llplugin/llpluginclassmedia.h	Fri Jan 26 11:54:52 2018 -0800
     3.2 +++ b/indra/llplugin/llpluginclassmedia.h	Fri Jan 26 17:06:19 2018 -0800
     3.3 @@ -195,7 +195,7 @@
     3.4  	bool	canPaste() const { return mCanPaste; };
     3.5  	
     3.6  	// These can be called before init(), and they will be queued and sent before the media init message.
     3.7 -	void	setUserDataPath(const std::string &user_data_path_cache, const std::string &user_data_path_cookies);
     3.8 +	void	setUserDataPath(const std::string &user_data_path_cache, const std::string &user_data_path_cookies, const std::string &user_data_path_cef_log);
     3.9  	void	setLanguageCode(const std::string &language_code);
    3.10  	void	setPluginsEnabled(const bool enabled);
    3.11  	void	setJavascriptEnabled(const bool enabled);
     4.1 --- a/indra/media_plugins/cef/media_plugin_cef.cpp	Fri Jan 26 11:54:52 2018 -0800
     4.2 +++ b/indra/media_plugins/cef/media_plugin_cef.cpp	Fri Jan 26 17:06:19 2018 -0800
     4.3 @@ -96,6 +96,8 @@
     4.4  	bool mCanPaste;
     4.5  	std::string mCachePath;
     4.6  	std::string mCookiePath;
     4.7 +	std::string mCefLogFile;
     4.8 +	bool mCefLogVerbose;
     4.9  	std::vector<std::string> mPickedFiles;
    4.10  	VolumeCatcher mVolumeCatcher;
    4.11  	F32 mCurVolume;
    4.12 @@ -126,6 +128,8 @@
    4.13  	mCanPaste = false;
    4.14  	mCachePath = "";
    4.15  	mCookiePath = "";
    4.16 +	mCefLogFile = "";
    4.17 +	mCefLogVerbose = false;
    4.18  	mPickedFiles.clear();
    4.19  	mCurVolume = 0.0;
    4.20  
    4.21 @@ -511,6 +515,8 @@
    4.22  				settings.plugins_enabled = mPluginsEnabled;
    4.23  				settings.user_agent_substring = mCEFLib->makeCompatibleUserAgentString(mUserAgentSubtring);
    4.24  				settings.webgl_enabled = true;
    4.25 +				settings.log_file = mCefLogFile;
    4.26 +				settings.log_verbose = mCefLogVerbose;
    4.27  
    4.28  				std::vector<std::string> custom_schemes(1, "secondlife");
    4.29  				mCEFLib->setCustomSchemes(custom_schemes);
    4.30 @@ -540,8 +546,11 @@
    4.31  			{
    4.32  				std::string user_data_path_cache = message_in.getValue("cache_path");
    4.33  				std::string user_data_path_cookies = message_in.getValue("cookies_path");
    4.34 +
    4.35  				mCachePath = user_data_path_cache + "cef_cache";
    4.36  				mCookiePath = user_data_path_cookies + "cef_cookies";
    4.37 +				mCefLogFile = message_in.getValue("cef_log_file");
    4.38 +				mCefLogVerbose = message_in.getValueBoolean("cef_verbose_log");
    4.39  			}
    4.40  			else if (message_name == "size_change")
    4.41  			{
     5.1 --- a/indra/newview/app_settings/settings.xml	Fri Jan 26 11:54:52 2018 -0800
     5.2 +++ b/indra/newview/app_settings/settings.xml	Fri Jan 26 17:06:19 2018 -0800
     5.3 @@ -16155,6 +16155,17 @@
     5.4        <key>Value</key>
     5.5        <integer>0</integer>
     5.6      </map>
     5.7 +    <key>CefVerboseLog</key>
     5.8 +    <map>
     5.9 +      <key>Comment</key>
    5.10 +      <string>Enable/disable CEF verbose loggingk</string>
    5.11 +      <key>Persist</key>
    5.12 +      <integer>1</integer>
    5.13 +      <key>Type</key>
    5.14 +      <string>Boolean</string>
    5.15 +      <key>Value</key>
    5.16 +      <integer>0</integer>
    5.17 +    </map>
    5.18  </map>
    5.19  </llsd>
    5.20  
     6.1 --- a/indra/newview/llviewermedia.cpp	Fri Jan 26 11:54:52 2018 -0800
     6.2 +++ b/indra/newview/llviewermedia.cpp	Fri Jan 26 17:06:19 2018 -0800
     6.3 @@ -1686,6 +1686,8 @@
     6.4  		std::string user_data_path_cookies = gDirUtilp->getOSUserAppDir();
     6.5  		user_data_path_cookies += gDirUtilp->getDirDelimiter();
     6.6  
     6.7 +		std::string user_data_path_cef_log = gDirUtilp->getExpandedFilename(LL_PATH_LOGS, "cef_log.txt");
     6.8 +
     6.9  		// Fix for EXT-5960 - make browser profile specific to user (cache, cookies etc.)
    6.10  		// If the linden username returned is blank, that can only mean we are
    6.11  		// at the login page displaying login Web page or Web browser test via Develop menu.
    6.12 @@ -1694,7 +1696,6 @@
    6.13  		std::string linden_user_dir = gDirUtilp->getLindenUserDir();
    6.14  		if ( ! linden_user_dir.empty() )
    6.15  		{
    6.16 -			// gDirUtilp->getLindenUserDir() is whole path, not just Linden name
    6.17  			user_data_path_cookies = linden_user_dir;
    6.18  			user_data_path_cookies += gDirUtilp->getDirDelimiter();
    6.19  		};
    6.20 @@ -1715,7 +1716,7 @@
    6.21  		{
    6.22  			media_source = new LLPluginClassMedia(owner);
    6.23  			media_source->setSize(default_width, default_height);
    6.24 -			media_source->setUserDataPath(user_data_path_cache, user_data_path_cookies);
    6.25 +			media_source->setUserDataPath(user_data_path_cache, user_data_path_cookies, user_data_path_cef_log);
    6.26  			media_source->setLanguageCode(LLUI::getLanguage());
    6.27  			media_source->setZoomFactor(zoom_factor);
    6.28  

mercurial