* 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]
Add support for passing TArray<T> as an argument to a FWebJSFunction.
rb: Justin.Sargent
Merging CL#2627633 using UE4-To-UE4-LauncherDev
[CL 2633907 by Keli Hlodversson in Main branch]
Reduces amount of required code and adds support to return arrays from UFunctions to JS code.
Merging CL#2624614 using UE4-To-UE4-LauncherDev
[CL 2624975 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]
Allow using the native mouse cursor handle from CEF.
JIRA: OPP-3734
rb: Justin.Sargent
#platformnotify Josh.Adams
[CL 2605865 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]