* Untangle mutual dependencies between objects and constructor order (OPP-3858):
* FWebBrowserWindow no longer keeps a reference to FWebBrowserHandler.
* CefBrowserWindow is created before creating FWebBrowserWindow and passed to its constructor.
* FWebBrowserViewport no longer has a reference back to the viewport widget.
* Cleaned how some platform specific paths were defined during module initialization.
* Sets current thread name (back) to GameThread after initializing CEF (UE-5165)
* Adopted changes from UT (with some modifications):
* Enable on-disk caching and persisting cookies when requested by server.
* Added product name and engine version to user agent request header.
* Ensure UStruct parameters passed by value to FWebJSFunctions are copied when constructing the argument list and not just their address.
*SWebBrowser scripting: Add support for passing TMap<FString, T> to FWebJSFunction objects.
Note: since the struct serializer does not yet support maps, this only works for arguments passed directly to the function object and not UStruct members nor function return values. OPP-3861
* Add support for passing a reference to the JS promise object implicitly created when calling UFunctions to provide for a way to report runtime errors back to it instead of just passing the return value.
* This also allows for implementing async functionality as the promise object can be saved and used after the UFunction has returned.
Merging CL#2633955, CL#2634077, CL#2634226, CL#2635540, CL#2636167, and CL#2636262 using UE4-To-UE4-LauncherDev
[CL 2636308 by Keli Hlodversson in Main branch]
Changes to fix background color issues when opening Chrome Dev Tools from a SBrowserWindow with transparency enabled.
[CL 2618356 by Keli Hlodversson in Main branch]
Merging CL#2608123 LauncherDev->Main
change summary:
- Popup features/settings are now passed to when requesting creation of new browser window.
- Web browser handler now implements DoClose()
- Added support for overriding web browser close functionality.
- Launcher specific test for spawning browser windows with dynamic content.
[CL 2611451 by Wes Fudala in Main branch]
The feature has never been included in an official release, so removing it should not cause a bw compatibility problem.
[CL 2606030 by Keli Hlodversson in Main branch]
Implement JS integration via a subset of UObject scripting functionality and custom CEF Messages
JIRA: OPP-3240
rb: Justin.Sargent
[CL 2601283 by Keli Hlodversson in Main branch]
Merging CL#2582871 LauncherDev->Main
change summary:
- Web browser modified to allow users to pass in a callback function that will handle window creation.
[CL 2586148 by Wes Fudala in Main branch]
Also removed guards around browser code in SWebBrowser and made sure that path for sub process exe is correct if game exe is not in the same folder.
[CL 2389777 by Matthew Griffin in Main branch]