Commit Graph

23 Commits

Author SHA1 Message Date
Keli Hlodversson
97a2e4a830 [INTEGRATE] SWebBrowser: Add hooks to to be able to handle alert and message boxes with a custom handler
OPP-3413
rb: Justin.Sargent
Merging CL#2637687 using UE4-To-UE4-LauncherDev

[CL 2638717 by Keli Hlodversson in Main branch]
2015-07-30 10:49:18 -04:00
Keli Hlodversson
82074ffed1 [INTEGRATE] SWebBrowser refactor and cleanups:
* 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]
2015-07-28 18:59:27 -04:00
Keli Hlodversson
c8f9f8fb99 [INTEGRATE] Fix support for overlay-based popup menus. This is required for fullscreen applications where opening a popup window for the menu is not at option.
OPP-3860
rb: Justin.Sargent

Merging CL#2627615  using UE4-To-UE4-LauncherDev.

[CL 2633902 by Keli Hlodversson in Main branch]
2015-07-27 11:06:35 -04:00
Keli Hlodversson
d3e3cb1317 [INTEGRATE] Merging CL#2611173 using UE4-To-UE4-LauncherDev
[CL 2618303 by Keli Hlodversson in Main branch]
2015-07-13 11:46:44 -04:00
Wes Fudala
ffba33f8c3 Fixed a number of issues with web browser window spawning and closing.
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]
2015-07-06 15:27:08 -04:00
Keli Hlodversson
9f4057814b [INTEGRATE] Merging CL#2606002 using UE4-To-UE4-LauncherDev, which removes support for the CEF MessageRouter mechanism, as the UObject script bindings are more convenient and flexible.
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]
2015-06-30 13:19:56 -04:00
Keli Hlodversson
8d353a5b02 [INTEGRATE] Merging CL#2604183 using UE4-To-UE4-LauncherDev:
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]
2015-06-30 11:54:52 -04:00
Keli Hlodversson
e2b03ba393 Merging CL#2601171 using UE4-To-UE4-LauncherDev:
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]
2015-06-25 16:56:38 -04:00
Wes Fudala
22c9856fe5 [OPP-3051] Add support for multiple browser windows.
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]
2015-06-12 14:55:16 -04:00
Justin Sargent
273cde1704 Merging using UE4-To-UE4-LauncherDev
#platformnotify Josh.Adams

[CL 2581810 by Justin Sargent in Main branch]
2015-06-09 16:41:53 -04:00
Peter Knepley
8642e28883 Integrate UT webbrowser changes
#codereview Matthew.Griffin

[CL 2563130 by Peter Knepley in Main branch]
2015-05-22 15:17:48 -04:00
Wes Fudala
0a11b4f033 [OPP-3051] Remove size clamp imposed on the web browser windows.
Merging CL#2507537 LauncherDev->Main

[CL 2536187 by Wes Fudala in Main branch]
2015-05-04 15:21:04 -04:00
Matthew Griffin
315259b0d1 Fixed issues with merge of WebBrowser code from Launcher branch
#codereview Carlos.Cuello, Keli.Hlodversson

[CL 2510109 by Matthew Griffin in Main branch]
2015-04-13 06:16:41 -04:00
Marc Audy
4562acb429 Fix shadow variables
[CL 2507160 by Marc Audy in Main branch]
2015-04-09 15:23:52 -04:00
Carlos Cuello
65c6b1a695 [INTEGRATE] Merging using UE4-To-UE4-LauncherDev, integrate all up to cl 2496104 from the LauncherDev branch. updated friends and chat module, lib curl updates, portal related fixes
[CL 2499790 by Carlos Cuello in Main branch]
2015-04-02 09:42:37 -04:00
Carlos Cuello
6f1ac76399 [INTEGRATE] UE4-LauncherDev->UE4 integrate all up to cl 2475889
[CL 2478426 by Carlos Cuello in Main branch]
2015-03-13 08:26:18 -04:00
Matt Kuhlenschmidt
d5d02955c7 Fix race conditions when updating textures from an SWebBrowser. Introduced a new thread safe way to update a texture (this is expensive as it requires an extra memcopy).
#codereview matthew.griffin

[CL 2463566 by Matt Kuhlenschmidt in Main branch]
2015-02-26 22:49:18 -05:00
Max Preussner
7001904470 WebBrowser: Converted OnTitleChanged delegate to an event; code and documentation cleanup pass
Merging using UE4-To-UE4-LauncherDev, CL# 2441875

[CL 2445350 by Max Preussner in Main branch]
2015-02-13 15:52:26 -05:00
Matthew Griffin
721a43fc98 Added use of LoadString to Web Browser window
Also added the option to pass a content string when the window is created, as you need to wait a frame before the browser is passed back for it to be valid.

[CL 2412858 by Matthew Griffin in Main branch]
2015-01-20 16:49:52 -05:00
Matthew Griffin
6f5b21f0a1 Ensured that web browser window size is set correctly
Changed Web Browser Window Set Size function to take an int point as there's no need for float version

Calculated integer size of viewport by adding position and size before converting to int, which avoids problems with rounding.

[CL 2397445 by Matthew Griffin in Main branch]
2015-01-05 08:54:59 -05:00
Matthew Griffin
0cbd65612b Fixed issue with web browser not responding to keyboard input on Mac
Changed how keyboard codes are passed to CEF on Mac

[CL 2392320 by Matthew Griffin in Main branch]
2014-12-18 05:27:03 -05:00
Matthew Griffin
5215ae3298 Added functionality to change the current URL of a web browser window
[CL 2391070 by Matthew Griffin in Main branch]
2014-12-17 09:20:23 -05:00
Matthew Griffin
102bea4250 Moving WebBrowser and CEF3Utils to Runtime so that they can be used in games.
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]
2014-12-16 06:41:01 -05:00