Files
UnrealEngineUWP/Engine/Source/Runtime/IOS/IOSLocalNotification/Private/IOSLocalNotification.cpp

144 lines
4.3 KiB
C++
Raw Normal View History

// Copyright 1998-2017 Epic Games, Inc. All Rights Reserved.
Copying //UE4/Dev-Platform to //UE4/Main (Source: //UE4/Dev-Platform @ 3008177) ========================== MAJOR FEATURES + CHANGES ========================== Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login #lockdown josh.adams Change 2970373 on 2016/05/09 by Lee.Clark PS4 - Fix NumInstances not getting reset after DrawIndirect calls Change 2972873 on 2016/05/10 by Michael.Trepka Correct initial position for SlateViewer windows on Mac Change 2974363 on 2016/05/11 by Mark.Satterthwaite Fix invoking buils using distcc from UFE - the command-line executed to access the number of parallel tasks was incorrect. Change 2975921 on 2016/05/12 by Michael.Trepka Removed unused AdjustWindowRegion declaration from LinuxWindow.h #codereview Dmitry.Rekman Change 2977002 on 2016/05/13 by Michael.Trepka Make sure dSYM generation action in UBT on Mac does not start before the source dylib is ready #codereview Ben.Marsh Change 2977337 on 2016/05/13 by Brent.Pease UE-27805 - Adding special characters into the BundleDisplayName or BundleName causes packaging error + Prevent illegal characters from being entered in the packaging UI + Report an error from iPhonePackager if a illegal bundle id is specified + Convert special characters to XML equivalents - Correctly check for the presence of iTunes 12 when packaging iOS games on Windows - Improve ios certificate and provision message in package settings UI #codereview peter.sauerbrei Change 2977509 on 2016/05/13 by Brent.Pease + Fix mac compile error Change 2978036 on 2016/05/14 by Mark.Satterthwaite One-line tweak that resolves incorrect rendering of the colour LUT because float imprecision allows -ve values to be passed into a call to pow which then generates NaN. #jira UE-30777 Change 2978037 on 2016/05/14 by Mark.Satterthwaite Fix a heap-use-after-free bug spotted by AddressSanitizer - you can't assume that the UObject system will be available in ShutdownModule() - on OS X it may have been killed a long time ago. Change 2978333 on 2016/05/16 by Lee.Clark Fix packaging of non-code projects when plugins are enabled #codereview Peter.Sauerbrei Change 2978780 on 2016/05/16 by Mark.Satterthwaite Reduce temporary allocations required to set uniform parameters in Metal. Change 2979680 on 2016/05/16 by Nick.Shin editor's HTML5 platform settings was missing due to the emscripten SDK move should have been included with CL: #2946251 Change 2979681 on 2016/05/16 by Nick.Shin cleaned up websocket processing for HTML5 #jira UE-13657 - HTML5 plugin OnRawRecieve overflow Change 2979701 on 2016/05/16 by Brent.Pease UE-28421 - Message box cannot be closed after accessing the home screen on iOS + Implement a timeout when waiting for a reply after sending background/foreground/suspend events from the main thread to the game thread. This solves the immediate problem presented in the jira bug report, however, there are deeper issues with the consequences of blocking the game thread that are not addressed. Perhaps structuring the game thread loop to know about modal dialogs so that it can receive these events even when a modal dialog is up could be a better longer term solution Change 2980766 on 2016/05/17 by Jeremiah.Waldron Adding Android build support for HarfBuzz - using a combination of android-cmake (from https://github.com/taka-no-me/android-cmake) to create the build files and Visual Studio 2015 to compile them - Adding Debug and RelWithDebInfo compiled binaries to harfbuzz-1.2.4/Android/<arch>/<config> Tested armv7 with TextShapingTest project on a GalaxyNote3 and text showed up correctly #jira UE-28586 #codereview chris.babcock Change 2980953 on 2016/05/17 by Jeremiah.Waldron Changing HarfBuzz build script and libs to use Release instead of RelWithDebInfo #jira UE-28586 Change 2981039 on 2016/05/17 by Jeff.Campeau ICMP support disabled for Xbox One and basic address processing wrappers provided (needed for Oodle support) Change 2981054 on 2016/05/17 by Jeff.Campeau Enable Live OSS for Orion on Xbox One Change 2981553 on 2016/05/18 by Jeff.Campeau Enable Oodle for Xbox One Change 2981555 on 2016/05/18 by Jeff.Campeau Scalability settings for Xbox One Change 2981774 on 2016/05/18 by Keith.Judge Xbox One - Duplicating Movie Player fix from 4.12. Change 2981789 on 2016/05/18 by Keith.Judge Xbox One - Duplicate fast semantics rendertarget unbind/clear/rebind fix from 4.12. Change 2981802 on 2016/05/18 by Keith.Judge Xbox One - Duplicate of distance field AO/Shadow fixes from 4.12. Change 2981875 on 2016/05/18 by Keith.Judge Xbox One - Dynamic VB/IB refactor. Duplicated from 4.12. Change 2981900 on 2016/05/18 by Keith.Judge Xbox One - D3D11Query refactor. Duplicated from 4.12 Change 2981945 on 2016/05/18 by Nick.Shin filled out response headers for HTML5 platform #jira UE-26047 - HTML5 HTTP Response Headers not implemented Change 2981981 on 2016/05/18 by Lee.Clark PS4 - Fix COTF not updating files #codereview Daniel.Lamb Change 2982246 on 2016/05/18 by Michael.Trepka Fixed Mono compile errors in UT build scripts Change 2983869 on 2016/05/19 by Mark.Satterthwaite Explicitly retain/release all the MTLTexture objects in FMetalSurface without the assumptions about them being the same object - the recent stencil & SRV related changes make those assumptions invalid and could lead to over-releasing some textures. #jira UE-29557 Change 2983871 on 2016/05/19 by Mark.Satterthwaite Pool Metal texture update buffers to reduce churn. Change 2983892 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2972885: Enable Metal resource lifetime delay on all platforms, not just iOS to try and address intermittent invalid resource errors. Change 2983898 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2982825: Correctly wait for the dispatch semaphore when clearing the Metal resource free lists. Change 2983911 on 2016/05/19 by Mark.Satterthwaite Change Metal SubmitCommandsHint to use an enum of flags rather than boolean variables to control behaviour so that its clearer to the reader what is going to happen. Change 2983916 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2974765: Workaround for UE-30069 - on Nvidia Macs we are breaking the GMux swap the second time we run the engine and it isn't clear why, so instead explicitly select the Metal device ourselves and don't allow the OS to swap the GPU driving the display. This will potentially reduce performance a little if the discrete GPU isn't already driving the display but until we know how we are clobbering the GMux/driver it is all we can do. This only applies to 10.11.5 with the default OS X drivers where there is more than one GPU in the system, earlier versions of OS X and the Nvidia WebDrivers are unaffected. Change 2984874 on 2016/05/20 by Keith.Judge Xbox One - Re-enable shader DXBC intermediate bytecode stripping, except for geometry and hull shaders where there's a possibility of runtime recompilation in certain combinations. Saves ~2MB in TM-ShaderModels, will save more in larger maps. #jira UEPLAT-1295 Change 2985446 on 2016/05/20 by Mark.Satterthwaite Remove the non-functional -metaldebug option from MetalRHI. Change 2985827 on 2016/05/20 by Nick.Shin call EndSession() onbeforeunload() note: API CHANGE - HTML5JavaScripteFx.{js,h} - UE_MakeHTTPDataRequest() #jira UE-22285 - Session End events are not generated for HTML5 Change 2986013 on 2016/05/20 by Jeremiah.Waldron PR #2387: In-App Purchases - parameters needed for Receipt Validation (Contributed by gameDNAstudio) Also touches IOS because of added RawPrice member in FInAppPurchaseProductInfo Pulled from Release-4.12 CL #jira UE-30782 #codereview chris.babcock, Peter.Sauerbrei Change 2986057 on 2016/05/20 by Mark.Satterthwaite Further changes to ensure that UE-30710 really is fixed while also not live-leaking memory in MetalRHI. Change 2986059 on 2016/05/20 by Mark.Satterthwaite Move the Metal uniform buffers into the same resource pool as all the other buffers and add stats for how many buffers are in the pool, how much memory is in use, free and wasted (due to aligned-buffer sizes). Change 2986060 on 2016/05/20 by Mark.Satterthwaite Disable tiled-reflections on Nvidia & Intel Metal until they sort out the sample command on cube-arrays ignoring the lod level. Change 2986063 on 2016/05/20 by Mark.Satterthwaite Missing change from previous CL. Change 2986066 on 2016/05/20 by Mark.Satterthwaite More Metal stats tracking the number & memory size of id<MTLBuffer>'s allocated/released each frame. Change 2986455 on 2016/05/23 by Keith.Judge Xbox One - Fix precompile promise in shader compiler to not stop subsequent defines from being parsed by D3DCompiler. Change 2986886 on 2016/05/23 by Mark.Satterthwaite Duplicate 4.12 CL #2986880: Fix UE-31124 due to bad array iteration logic - amazing that this hadn't been seen earlier. Change 2986955 on 2016/05/23 by Brent.Pease + Do not error out if "[PROJECT_NAME]" is in the bundle ID #codereview peter.sauerbrei Change 2987304 on 2016/05/23 by Chris.Babcock Remove old Android platforms #ue4 #android #codeview Josh.Adams Change 2987571 on 2016/05/23 by Mark.Satterthwaite Duplicate CL #2967998: Integrate - MaterialParameterCollections now create default resources (uniform buffers) which are used when no valid FScene is present (eg DrawTile while exporting materials to lightmass) #jira UE-31111 Change 2987591 on 2016/05/23 by Mark.Satterthwaite Remove usage of MTLRender/ComputeEncoder setSamplerState/s calls that take Min & Max Lod overrides - they currently don't work as expected on some GPU drivers and as we don't use them anywhere and I can't see that we will removing them costs us nothing and fixes tiled reflections on Nvidia with Metal SM5. Change 2987679 on 2016/05/23 by Mark.Satterthwaite Re-enable tiled reflections on Nvidia by default now that they work. Change 2987799 on 2016/05/24 by Mark.Satterthwaite Add a shader compile option "r.Shaders.ZeroInitialise" that we can turn on to force explicit zero-initialisation of local & temporary variables in hlslcc - so far only implemented for Metal. The default behaviour remains to omit zero-initialisation but the option is helpful to eliminate or track down uninitialised access in shaders that are causing real bugs (e.g. POM material relying on zero-initialised loop counters causing hangs/bad rendering on Mac). Change 2989395 on 2016/05/25 by Lee.Clark PS4 - Fix shader output / render target format mismatch for sparse MRT. Change 2990003 on 2016/05/25 by Jeremiah.Waldron When creating our own ConfigCacheIni in GetConfigCacheIni_APL, do not assume that the Engine ini was requested. Instead use the baseIniName passed to the function. Change 2990393 on 2016/05/25 by Mark.Satterthwaite Back out changelist 2961310 - causes more problems than it solves. DistanceField rendering will still work on Intel Metal SM5 and may work on AMD but will be broken on Nvidia due to a bad access within the compute shader - there's no bounds checking in Metal... Change 2990516 on 2016/05/25 by Brent.Pease + UEPLAT-1294 - Support for local notifications + UEPLAT-1254 - Add BP event for device orientation change + Added a new class based on UGameInstance for mobile device callbacks + Ensured IOSAppDelegate.cpp follows convention for lambda functions Change 2991361 on 2016/05/26 by Jeremiah.Waldron Move InAppPurchase class to StoreHelper.java so GooglePlay and Amazon store helpers can use it Change 2992450 on 2016/05/27 by Mark.Satterthwaite Optional r.Shaders.BoundsChecking flag to control whether shader platforms should manually enforce buffer access bounds - HLSL returns zero or ignores invalid reads & writes but Metal leaves the behaviour undefined and some drivers then fail. By default this is off and its whatever the native platform behaviour is, enabling it will cost some amount of performance as the shader translator inserts additional instructions to try and match D3D as accurately as possible. This is required to fix GPU restart errors on some Metal drivers when using SM5 rendering features including DistanceField shaders. Change 2993027 on 2016/05/27 by Mark.Satterthwaite Fix typo for new CFLAG_BoundsChecking enumeration value. Change 2993594 on 2016/05/27 by Mark.Satterthwaite Build fix - check not assert... Change 2993595 on 2016/05/27 by Mark.Satterthwaite Fix typo from Xcode hang... Change 2993614 on 2016/05/28 by Mark.Satterthwaite At least for now enable shader zero-initialisation and bounds-checking on Mac to ensure that Metal shaders are compiled with semantics that approximate those HLSL assumes. This may cost some performance but will avoid a few GPU restarts on some vendor drivers. Change 2993747 on 2016/05/28 by Mark.Satterthwaite Separate texture & buffer references in the Metal backend as they bind to separate arrays in the runtime to avoid giving the side-table buffer an innaccessible binding index. Also the side-table doesn't need to be emitted if no buffer SRV or UAV is used. Change 2994256 on 2016/05/31 by Lee.Clark PS4 - Fix unitialized Head Position from HMD tracker when tracking fails. Fixes a problem with A3D audio not working. #codereview Chad.Taylor,Aaron.McLeran Change 2994281 on 2016/05/31 by Rolando.Caloca DP - Allow hlslcc to process type casts containing the 'const' keyword - it isn't strictly complete as it will simply omit the type qualifier from the cast in the AST but it is sufficient for FortniteFoliage_MasterMaterial to compile. #codereview Mark.Satterthwaite, Dmitry.Rekman #jira UE-31411 Change 2994467 on 2016/05/31 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 2994493 on 2016/05/31 by Daniel.Lamb Fixed issue with DDC commandlet not caching things from the startup packages list. Change 2994644 on 2016/05/31 by Mark.Satterthwaite Updated hlslcc Mac binaries with fix for UE-31411 which RCO accepted and submitted + script for building parsers on POSIX OSes hooked up to an Xcode scheme in the project. Change 2996074 on 2016/06/01 by Lee.Clark PS4 - Fix GS mode not getting disabled when using parallel contexts. #codereview Marcus.Wassmer Change 2996129 on 2016/06/01 by Brent.Pease Manual merge of Pete's dsym generation fix (CL#2996089) from the 4.12 branch. Change 2996130 on 2016/06/01 by Jeremiah.Waldron PR #2387 part 2 (Contributed by gameDNAstudio) Adding ability to consume purchases during GooglePlay RestorePurchases This also touches IOS due to changes to base classes and function signatures #codereview chris.babcock, Peter.Sauerbrei Change 2996441 on 2016/06/01 by Jeremiah.Waldron Relates to PR #2387: Adding ability to consume purchases during GooglePlay RestorePurchases (Contributed by gameDNAstudio) Missing changes from part 2 reworked so that there is still only one RestorePurchases function which takes the product IDs and consumable flags. I reflected this in StoreHelper so no casting is necessary in GameActivity and the soon-to-be-added AmazonStoreHelper in the GameCircle plugin will still work dynamically with GameActivity since it will call StoreHelper functionality rather than a GooglePlayStoreHelper specific function. #codereview chris.babcock Change 2996514 on 2016/06/01 by Jeff.Campeau Fix merge issue from main #jira UE-31502 Change 2996740 on 2016/06/01 by Jonathan.Fitzpatrick https://jira.ol.epicgames.net/browse/UE-31446 Two PS4 source files fail during unity builds due to name conflict with handleReserveFailed. Renamed handleReserveFailed to handleReserveFailedLightweight Change 2997235 on 2016/06/01 by Jeremiah.Waldron RestorePurchases fix up in Match3 since the new Restore consumable stuff adds an additional pin to the Restore node. The IAP product in Match3 is non-consumable so just passing an empty array where necessary Change 2997241 on 2016/06/01 by Jeremiah.Waldron OnlineSubsystemGameCircle Plugin - Leaderboards - Achievements - Friends - IAP - External UI Interface - Runtime Settings in Project Settings Plugin section when plugin is enabled - Disabled by default #jira UEPLAT-105 #codereview chris.babcock Change 2997618 on 2016/06/02 by Lee.Clark #UE4Docs: Removed PS4MapFileUtil info Change 2997840 on 2016/06/02 by Jeremiah.Waldron Removing trace logging from OnlineSubsystemGameCircle_APL Change 2998754 on 2016/06/02 by Brent.Pease Change BlueprintMobileLibrary to BlueprintPlatformLibrary Change 3000762 on 2016/06/03 by Jeff.Campeau Add example rating info to ShooterGame Change 3001037 on 2016/06/04 by Brent.Pease + Add ui screens for delegate test, local notification test, and iap test + Implement delegate test Change 3001250 on 2016/06/05 by Brent.Pease + Initial pass at IAP test screen Change 3001639 on 2016/06/06 by Jeff.Campeau Fix Xbox One build issue with DX12 #codereview Zabir.Hoque Change 3002574 on 2016/06/06 by Jeremiah.Waldron Adding Android Install Location to Android platform runtime settings and manifest generation Change 3002780 on 2016/06/06 by Brent.Pease + Initial implementation of local notification test Change 3003005 on 2016/06/06 by Jeremiah.Waldron OnlineSubsystemGameCircle plugin - adding setting for Fire TV support. Using that specification in the APL to Add/Update android.hardware.touchscreen feature required attribute Change 3004392 on 2016/06/07 by Jeremiah.Waldron Fixing typo in APL comment :) Change 3005768 on 2016/06/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3005929 on 2016/06/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3006151 on 2016/06/08 by Peter.Sauerbrei fix for LocalNotifications not available on TVOS #lockdown josh.adams Change 3006183 on 2016/06/08 by Brent.Pease Manual merge CL#3000242 from Release-4.12 into Dev-Platform #lockdown josh.adams Change 3006296 on 2016/06/08 by Peter.Sauerbrei submit an updated iPhonePackager and support DLLs #lockdown josh.adams Change 3006378 on 2016/06/08 by Peter.Sauerbrei fix for API update to RestorePurchases #codereview brent.pease #lockdown josh.adams #lockdown nick.penwarden [CL 3008183 by Josh Adams in Main branch]
2016-06-09 17:45:44 -04:00
/*=============================================================================
IOSLocalNotification.cpp: Unreal IOSLocalNotification service interface object.
=============================================================================*/
/*------------------------------------------------------------------------------------
Includes
------------------------------------------------------------------------------------*/
#include "IOSLocalNotification.h"
#include "IOSApplication.h"
#include "IOSAppDelegate.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "Modules/ModuleManager.h"
Copying //UE4/Dev-Platform to //UE4/Main (Source: //UE4/Dev-Platform @ 3008177) ========================== MAJOR FEATURES + CHANGES ========================== Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login #lockdown josh.adams Change 2970373 on 2016/05/09 by Lee.Clark PS4 - Fix NumInstances not getting reset after DrawIndirect calls Change 2972873 on 2016/05/10 by Michael.Trepka Correct initial position for SlateViewer windows on Mac Change 2974363 on 2016/05/11 by Mark.Satterthwaite Fix invoking buils using distcc from UFE - the command-line executed to access the number of parallel tasks was incorrect. Change 2975921 on 2016/05/12 by Michael.Trepka Removed unused AdjustWindowRegion declaration from LinuxWindow.h #codereview Dmitry.Rekman Change 2977002 on 2016/05/13 by Michael.Trepka Make sure dSYM generation action in UBT on Mac does not start before the source dylib is ready #codereview Ben.Marsh Change 2977337 on 2016/05/13 by Brent.Pease UE-27805 - Adding special characters into the BundleDisplayName or BundleName causes packaging error + Prevent illegal characters from being entered in the packaging UI + Report an error from iPhonePackager if a illegal bundle id is specified + Convert special characters to XML equivalents - Correctly check for the presence of iTunes 12 when packaging iOS games on Windows - Improve ios certificate and provision message in package settings UI #codereview peter.sauerbrei Change 2977509 on 2016/05/13 by Brent.Pease + Fix mac compile error Change 2978036 on 2016/05/14 by Mark.Satterthwaite One-line tweak that resolves incorrect rendering of the colour LUT because float imprecision allows -ve values to be passed into a call to pow which then generates NaN. #jira UE-30777 Change 2978037 on 2016/05/14 by Mark.Satterthwaite Fix a heap-use-after-free bug spotted by AddressSanitizer - you can't assume that the UObject system will be available in ShutdownModule() - on OS X it may have been killed a long time ago. Change 2978333 on 2016/05/16 by Lee.Clark Fix packaging of non-code projects when plugins are enabled #codereview Peter.Sauerbrei Change 2978780 on 2016/05/16 by Mark.Satterthwaite Reduce temporary allocations required to set uniform parameters in Metal. Change 2979680 on 2016/05/16 by Nick.Shin editor's HTML5 platform settings was missing due to the emscripten SDK move should have been included with CL: #2946251 Change 2979681 on 2016/05/16 by Nick.Shin cleaned up websocket processing for HTML5 #jira UE-13657 - HTML5 plugin OnRawRecieve overflow Change 2979701 on 2016/05/16 by Brent.Pease UE-28421 - Message box cannot be closed after accessing the home screen on iOS + Implement a timeout when waiting for a reply after sending background/foreground/suspend events from the main thread to the game thread. This solves the immediate problem presented in the jira bug report, however, there are deeper issues with the consequences of blocking the game thread that are not addressed. Perhaps structuring the game thread loop to know about modal dialogs so that it can receive these events even when a modal dialog is up could be a better longer term solution Change 2980766 on 2016/05/17 by Jeremiah.Waldron Adding Android build support for HarfBuzz - using a combination of android-cmake (from https://github.com/taka-no-me/android-cmake) to create the build files and Visual Studio 2015 to compile them - Adding Debug and RelWithDebInfo compiled binaries to harfbuzz-1.2.4/Android/<arch>/<config> Tested armv7 with TextShapingTest project on a GalaxyNote3 and text showed up correctly #jira UE-28586 #codereview chris.babcock Change 2980953 on 2016/05/17 by Jeremiah.Waldron Changing HarfBuzz build script and libs to use Release instead of RelWithDebInfo #jira UE-28586 Change 2981039 on 2016/05/17 by Jeff.Campeau ICMP support disabled for Xbox One and basic address processing wrappers provided (needed for Oodle support) Change 2981054 on 2016/05/17 by Jeff.Campeau Enable Live OSS for Orion on Xbox One Change 2981553 on 2016/05/18 by Jeff.Campeau Enable Oodle for Xbox One Change 2981555 on 2016/05/18 by Jeff.Campeau Scalability settings for Xbox One Change 2981774 on 2016/05/18 by Keith.Judge Xbox One - Duplicating Movie Player fix from 4.12. Change 2981789 on 2016/05/18 by Keith.Judge Xbox One - Duplicate fast semantics rendertarget unbind/clear/rebind fix from 4.12. Change 2981802 on 2016/05/18 by Keith.Judge Xbox One - Duplicate of distance field AO/Shadow fixes from 4.12. Change 2981875 on 2016/05/18 by Keith.Judge Xbox One - Dynamic VB/IB refactor. Duplicated from 4.12. Change 2981900 on 2016/05/18 by Keith.Judge Xbox One - D3D11Query refactor. Duplicated from 4.12 Change 2981945 on 2016/05/18 by Nick.Shin filled out response headers for HTML5 platform #jira UE-26047 - HTML5 HTTP Response Headers not implemented Change 2981981 on 2016/05/18 by Lee.Clark PS4 - Fix COTF not updating files #codereview Daniel.Lamb Change 2982246 on 2016/05/18 by Michael.Trepka Fixed Mono compile errors in UT build scripts Change 2983869 on 2016/05/19 by Mark.Satterthwaite Explicitly retain/release all the MTLTexture objects in FMetalSurface without the assumptions about them being the same object - the recent stencil & SRV related changes make those assumptions invalid and could lead to over-releasing some textures. #jira UE-29557 Change 2983871 on 2016/05/19 by Mark.Satterthwaite Pool Metal texture update buffers to reduce churn. Change 2983892 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2972885: Enable Metal resource lifetime delay on all platforms, not just iOS to try and address intermittent invalid resource errors. Change 2983898 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2982825: Correctly wait for the dispatch semaphore when clearing the Metal resource free lists. Change 2983911 on 2016/05/19 by Mark.Satterthwaite Change Metal SubmitCommandsHint to use an enum of flags rather than boolean variables to control behaviour so that its clearer to the reader what is going to happen. Change 2983916 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2974765: Workaround for UE-30069 - on Nvidia Macs we are breaking the GMux swap the second time we run the engine and it isn't clear why, so instead explicitly select the Metal device ourselves and don't allow the OS to swap the GPU driving the display. This will potentially reduce performance a little if the discrete GPU isn't already driving the display but until we know how we are clobbering the GMux/driver it is all we can do. This only applies to 10.11.5 with the default OS X drivers where there is more than one GPU in the system, earlier versions of OS X and the Nvidia WebDrivers are unaffected. Change 2984874 on 2016/05/20 by Keith.Judge Xbox One - Re-enable shader DXBC intermediate bytecode stripping, except for geometry and hull shaders where there's a possibility of runtime recompilation in certain combinations. Saves ~2MB in TM-ShaderModels, will save more in larger maps. #jira UEPLAT-1295 Change 2985446 on 2016/05/20 by Mark.Satterthwaite Remove the non-functional -metaldebug option from MetalRHI. Change 2985827 on 2016/05/20 by Nick.Shin call EndSession() onbeforeunload() note: API CHANGE - HTML5JavaScripteFx.{js,h} - UE_MakeHTTPDataRequest() #jira UE-22285 - Session End events are not generated for HTML5 Change 2986013 on 2016/05/20 by Jeremiah.Waldron PR #2387: In-App Purchases - parameters needed for Receipt Validation (Contributed by gameDNAstudio) Also touches IOS because of added RawPrice member in FInAppPurchaseProductInfo Pulled from Release-4.12 CL #jira UE-30782 #codereview chris.babcock, Peter.Sauerbrei Change 2986057 on 2016/05/20 by Mark.Satterthwaite Further changes to ensure that UE-30710 really is fixed while also not live-leaking memory in MetalRHI. Change 2986059 on 2016/05/20 by Mark.Satterthwaite Move the Metal uniform buffers into the same resource pool as all the other buffers and add stats for how many buffers are in the pool, how much memory is in use, free and wasted (due to aligned-buffer sizes). Change 2986060 on 2016/05/20 by Mark.Satterthwaite Disable tiled-reflections on Nvidia & Intel Metal until they sort out the sample command on cube-arrays ignoring the lod level. Change 2986063 on 2016/05/20 by Mark.Satterthwaite Missing change from previous CL. Change 2986066 on 2016/05/20 by Mark.Satterthwaite More Metal stats tracking the number & memory size of id<MTLBuffer>'s allocated/released each frame. Change 2986455 on 2016/05/23 by Keith.Judge Xbox One - Fix precompile promise in shader compiler to not stop subsequent defines from being parsed by D3DCompiler. Change 2986886 on 2016/05/23 by Mark.Satterthwaite Duplicate 4.12 CL #2986880: Fix UE-31124 due to bad array iteration logic - amazing that this hadn't been seen earlier. Change 2986955 on 2016/05/23 by Brent.Pease + Do not error out if "[PROJECT_NAME]" is in the bundle ID #codereview peter.sauerbrei Change 2987304 on 2016/05/23 by Chris.Babcock Remove old Android platforms #ue4 #android #codeview Josh.Adams Change 2987571 on 2016/05/23 by Mark.Satterthwaite Duplicate CL #2967998: Integrate - MaterialParameterCollections now create default resources (uniform buffers) which are used when no valid FScene is present (eg DrawTile while exporting materials to lightmass) #jira UE-31111 Change 2987591 on 2016/05/23 by Mark.Satterthwaite Remove usage of MTLRender/ComputeEncoder setSamplerState/s calls that take Min & Max Lod overrides - they currently don't work as expected on some GPU drivers and as we don't use them anywhere and I can't see that we will removing them costs us nothing and fixes tiled reflections on Nvidia with Metal SM5. Change 2987679 on 2016/05/23 by Mark.Satterthwaite Re-enable tiled reflections on Nvidia by default now that they work. Change 2987799 on 2016/05/24 by Mark.Satterthwaite Add a shader compile option "r.Shaders.ZeroInitialise" that we can turn on to force explicit zero-initialisation of local & temporary variables in hlslcc - so far only implemented for Metal. The default behaviour remains to omit zero-initialisation but the option is helpful to eliminate or track down uninitialised access in shaders that are causing real bugs (e.g. POM material relying on zero-initialised loop counters causing hangs/bad rendering on Mac). Change 2989395 on 2016/05/25 by Lee.Clark PS4 - Fix shader output / render target format mismatch for sparse MRT. Change 2990003 on 2016/05/25 by Jeremiah.Waldron When creating our own ConfigCacheIni in GetConfigCacheIni_APL, do not assume that the Engine ini was requested. Instead use the baseIniName passed to the function. Change 2990393 on 2016/05/25 by Mark.Satterthwaite Back out changelist 2961310 - causes more problems than it solves. DistanceField rendering will still work on Intel Metal SM5 and may work on AMD but will be broken on Nvidia due to a bad access within the compute shader - there's no bounds checking in Metal... Change 2990516 on 2016/05/25 by Brent.Pease + UEPLAT-1294 - Support for local notifications + UEPLAT-1254 - Add BP event for device orientation change + Added a new class based on UGameInstance for mobile device callbacks + Ensured IOSAppDelegate.cpp follows convention for lambda functions Change 2991361 on 2016/05/26 by Jeremiah.Waldron Move InAppPurchase class to StoreHelper.java so GooglePlay and Amazon store helpers can use it Change 2992450 on 2016/05/27 by Mark.Satterthwaite Optional r.Shaders.BoundsChecking flag to control whether shader platforms should manually enforce buffer access bounds - HLSL returns zero or ignores invalid reads & writes but Metal leaves the behaviour undefined and some drivers then fail. By default this is off and its whatever the native platform behaviour is, enabling it will cost some amount of performance as the shader translator inserts additional instructions to try and match D3D as accurately as possible. This is required to fix GPU restart errors on some Metal drivers when using SM5 rendering features including DistanceField shaders. Change 2993027 on 2016/05/27 by Mark.Satterthwaite Fix typo for new CFLAG_BoundsChecking enumeration value. Change 2993594 on 2016/05/27 by Mark.Satterthwaite Build fix - check not assert... Change 2993595 on 2016/05/27 by Mark.Satterthwaite Fix typo from Xcode hang... Change 2993614 on 2016/05/28 by Mark.Satterthwaite At least for now enable shader zero-initialisation and bounds-checking on Mac to ensure that Metal shaders are compiled with semantics that approximate those HLSL assumes. This may cost some performance but will avoid a few GPU restarts on some vendor drivers. Change 2993747 on 2016/05/28 by Mark.Satterthwaite Separate texture & buffer references in the Metal backend as they bind to separate arrays in the runtime to avoid giving the side-table buffer an innaccessible binding index. Also the side-table doesn't need to be emitted if no buffer SRV or UAV is used. Change 2994256 on 2016/05/31 by Lee.Clark PS4 - Fix unitialized Head Position from HMD tracker when tracking fails. Fixes a problem with A3D audio not working. #codereview Chad.Taylor,Aaron.McLeran Change 2994281 on 2016/05/31 by Rolando.Caloca DP - Allow hlslcc to process type casts containing the 'const' keyword - it isn't strictly complete as it will simply omit the type qualifier from the cast in the AST but it is sufficient for FortniteFoliage_MasterMaterial to compile. #codereview Mark.Satterthwaite, Dmitry.Rekman #jira UE-31411 Change 2994467 on 2016/05/31 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 2994493 on 2016/05/31 by Daniel.Lamb Fixed issue with DDC commandlet not caching things from the startup packages list. Change 2994644 on 2016/05/31 by Mark.Satterthwaite Updated hlslcc Mac binaries with fix for UE-31411 which RCO accepted and submitted + script for building parsers on POSIX OSes hooked up to an Xcode scheme in the project. Change 2996074 on 2016/06/01 by Lee.Clark PS4 - Fix GS mode not getting disabled when using parallel contexts. #codereview Marcus.Wassmer Change 2996129 on 2016/06/01 by Brent.Pease Manual merge of Pete's dsym generation fix (CL#2996089) from the 4.12 branch. Change 2996130 on 2016/06/01 by Jeremiah.Waldron PR #2387 part 2 (Contributed by gameDNAstudio) Adding ability to consume purchases during GooglePlay RestorePurchases This also touches IOS due to changes to base classes and function signatures #codereview chris.babcock, Peter.Sauerbrei Change 2996441 on 2016/06/01 by Jeremiah.Waldron Relates to PR #2387: Adding ability to consume purchases during GooglePlay RestorePurchases (Contributed by gameDNAstudio) Missing changes from part 2 reworked so that there is still only one RestorePurchases function which takes the product IDs and consumable flags. I reflected this in StoreHelper so no casting is necessary in GameActivity and the soon-to-be-added AmazonStoreHelper in the GameCircle plugin will still work dynamically with GameActivity since it will call StoreHelper functionality rather than a GooglePlayStoreHelper specific function. #codereview chris.babcock Change 2996514 on 2016/06/01 by Jeff.Campeau Fix merge issue from main #jira UE-31502 Change 2996740 on 2016/06/01 by Jonathan.Fitzpatrick https://jira.ol.epicgames.net/browse/UE-31446 Two PS4 source files fail during unity builds due to name conflict with handleReserveFailed. Renamed handleReserveFailed to handleReserveFailedLightweight Change 2997235 on 2016/06/01 by Jeremiah.Waldron RestorePurchases fix up in Match3 since the new Restore consumable stuff adds an additional pin to the Restore node. The IAP product in Match3 is non-consumable so just passing an empty array where necessary Change 2997241 on 2016/06/01 by Jeremiah.Waldron OnlineSubsystemGameCircle Plugin - Leaderboards - Achievements - Friends - IAP - External UI Interface - Runtime Settings in Project Settings Plugin section when plugin is enabled - Disabled by default #jira UEPLAT-105 #codereview chris.babcock Change 2997618 on 2016/06/02 by Lee.Clark #UE4Docs: Removed PS4MapFileUtil info Change 2997840 on 2016/06/02 by Jeremiah.Waldron Removing trace logging from OnlineSubsystemGameCircle_APL Change 2998754 on 2016/06/02 by Brent.Pease Change BlueprintMobileLibrary to BlueprintPlatformLibrary Change 3000762 on 2016/06/03 by Jeff.Campeau Add example rating info to ShooterGame Change 3001037 on 2016/06/04 by Brent.Pease + Add ui screens for delegate test, local notification test, and iap test + Implement delegate test Change 3001250 on 2016/06/05 by Brent.Pease + Initial pass at IAP test screen Change 3001639 on 2016/06/06 by Jeff.Campeau Fix Xbox One build issue with DX12 #codereview Zabir.Hoque Change 3002574 on 2016/06/06 by Jeremiah.Waldron Adding Android Install Location to Android platform runtime settings and manifest generation Change 3002780 on 2016/06/06 by Brent.Pease + Initial implementation of local notification test Change 3003005 on 2016/06/06 by Jeremiah.Waldron OnlineSubsystemGameCircle plugin - adding setting for Fire TV support. Using that specification in the APL to Add/Update android.hardware.touchscreen feature required attribute Change 3004392 on 2016/06/07 by Jeremiah.Waldron Fixing typo in APL comment :) Change 3005768 on 2016/06/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3005929 on 2016/06/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3006151 on 2016/06/08 by Peter.Sauerbrei fix for LocalNotifications not available on TVOS #lockdown josh.adams Change 3006183 on 2016/06/08 by Brent.Pease Manual merge CL#3000242 from Release-4.12 into Dev-Platform #lockdown josh.adams Change 3006296 on 2016/06/08 by Peter.Sauerbrei submit an updated iPhonePackager and support DLLs #lockdown josh.adams Change 3006378 on 2016/06/08 by Peter.Sauerbrei fix for API update to RestorePurchases #codereview brent.pease #lockdown josh.adams #lockdown nick.penwarden [CL 3008183 by Josh Adams in Main branch]
2016-06-09 17:45:44 -04:00
DEFINE_LOG_CATEGORY(LogIOSLocalNotification);
class FIOSLocalNotificationModule : public ILocalNotificationModule
{
public:
/** Creates a new instance of the audio device implemented by the module. */
virtual ILocalNotificationService* GetLocalNotificationService() override
{
static ILocalNotificationService* oneTrueLocalNotificationService = nullptr;
if(oneTrueLocalNotificationService == nullptr)
{
oneTrueLocalNotificationService = new FIOSLocalNotificationService;
}
return oneTrueLocalNotificationService;
}
};
IMPLEMENT_MODULE(FIOSLocalNotificationModule, IOSLocalNotification);
/*------------------------------------------------------------------------------------
FIOSLocalNotification
------------------------------------------------------------------------------------*/
FIOSLocalNotificationService::FIOSLocalNotificationService()
{
AppLaunchedWithNotification = false;
LaunchNotificationFireDate = 0;
}
void FIOSLocalNotificationService::ClearAllLocalNotifications()
{
#if !PLATFORM_TVOS
UIApplication* application = [UIApplication sharedApplication];
[application cancelAllLocalNotifications];
#endif
}
void FIOSLocalNotificationService::ScheduleLocalNotificationAtTime(const FDateTime& FireDateTime, bool LocalTime, const FText& Title, const FText& Body, const FText& Action, const FString& ActivationEvent)
{
#if !PLATFORM_TVOS
UIApplication* application = [UIApplication sharedApplication];
NSCalendar *calendar = [NSCalendar autoupdatingCurrentCalendar];
NSDateComponents *dateComps = [[NSDateComponents alloc] init];
[dateComps setDay:FireDateTime.GetDay()];
[dateComps setMonth:FireDateTime.GetMonth()];
[dateComps setYear:FireDateTime.GetYear()];
[dateComps setHour:FireDateTime.GetHour()];
[dateComps setMinute:FireDateTime.GetMinute()];
[dateComps setSecond:FireDateTime.GetSecond()];
NSDate *itemDate = [calendar dateFromComponents:dateComps];
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
if (localNotif == nil)
return;
localNotif.fireDate = itemDate;
if(LocalTime)
{
localNotif.timeZone = [NSTimeZone defaultTimeZone];
}
else
{
localNotif.timeZone = nil;
}
NSString* alertBody = [NSString stringWithFString:Body.ToString()];
if(alertBody != nil)
{
localNotif.alertBody = alertBody;
}
NSString* alertAction = [NSString stringWithFString:Action.ToString()];
if(alertAction != nil)
{
localNotif.alertAction = alertAction;
}
if([IOSAppDelegate GetDelegate].OSVersion >= 8.2f)
{
NSString* alertTitle = [NSString stringWithFString:Title.ToString()];
if(alertTitle != nil)
{
localNotif.alertTitle = alertTitle;
}
}
localNotif.soundName = UILocalNotificationDefaultSoundName;
localNotif.applicationIconBadgeNumber = 1;
NSString* activateEventNSString = [NSString stringWithFString:ActivationEvent];
if(activateEventNSString != nil)
{
NSDictionary* infoDict = [NSDictionary dictionaryWithObject:activateEventNSString forKey:@"ActivationEvent"];
if(infoDict != nil)
{
localNotif.userInfo = infoDict;
}
}
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
#endif
}
Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3147796) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 2948319 on 2016/04/19 by Nick.Shin update zlib to v1.2.8 part 1 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2948661 on 2016/04/19 by Nick.Shin keep using old zlibs until they are recompiled with the newer version Change 2948737 on 2016/04/19 by Nick.Shin build warning fix Change 2949334 on 2016/04/20 by Nick.Shin fix library path for some reason, NetworkFileSystem and HttpNetworkReplayStreaming on Mac platform needs full path - even though lib path was set... Change 2951556 on 2016/04/21 by Nick.Shin static libs double checked #jira UE-29674 - Editor fails to open in Dev-Platform Change 2951559 on 2016/04/21 by Nick.Shin static libs double checked forgot these files - they were in another changelist #jira UE-29674 - Editor fails to open in Dev-Platform Change 2952411 on 2016/04/22 by Nick.Shin add win32 build targets for zlib openssl libcurl libwebsockets part 1 of 2: these are the C# build scripts Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login Change 3118163 on 2016/09/08 by Josh.Adams perm test 2, not a useful file at all Change 3121142 on 2016/09/12 by Daniel.Lamb Attempt to fix deterministic cooking issue for particlelodlevel. Ensure the spawn module has had postload called on it before using. #test Paragon cook Change 3121150 on 2016/09/12 by Daniel.Lamb Added warning logs to help track down issue UE-33453. Change 3121201 on 2016/09/12 by Keith.Judge Xbox One - Replicate CL 3114357 from 4.13 branch. ESRAM clear on create fix. Change 3121302 on 2016/09/12 by Joe.Graf Fixed up the IMPLEMENT_MODULE macro usage to avoid the link errors Change 3121379 on 2016/09/12 by Dmitry.Rekman Linux: only link libraries that export needed symbols (UE-35720). - Fixes very long startup times of modular builds. - Includes PR #2778 by slonopotamus. #jira UE-35720 Change 3121383 on 2016/09/12 by Dmitry.Rekman Linux: added some missing _API declarations on symbols used externally. - Compiling editor with -fvisibility=hidden works after this fix (although running still doesn't). Change 3121456 on 2016/09/12 by Daniel.Lamb Attempt to fix deterministic cooking issue for particlelodlevel. Ensure the spawn module has had postload called on it before using. #test Paragon cook Change 3122939 on 2016/09/13 by Luke.Thatcher [PLATFORM] [PS4] [!] Skip orbismemdmp files in the PS4 crash handler web service. - Writing these files to disk causes orbis-tm.exe to take a file lock on them, which means we can't move the crash directory to the landing zone. Change 3123040 on 2016/09/13 by Brent.Pease + Fix VS compile error by removing ENGINE_API from virtual method decls since ENGINE_API is defined for the entire class now. Change 3123664 on 2016/09/13 by Nick.Shin this was originally checked into: release 4.13.1 bringing here to dev-platform -- original submit comments -- first, safari has a problem with firing off "window resized" events - causing an infinite loop of the window "resizing" next, retina has "bigger" size calculations going off -- so y-delta checks greater than 2 are done to prevent resize event firing off in an infinite loop jira UE-35363 - Huge game window when launching onto Safari 9.1.2 Change 3125282 on 2016/09/14 by Michael.Trepka Fixed iOS and tvOS code indexing in Xcode project Change 3126812 on 2016/09/15 by Josh.Adams Merged Wolf support into Dev-Platform (hidden from almost all people still). Non-Wolf-specific changes: - Added Parse function to JsonObject.cs to be able to parse a string - Replaced some hacky post-reflection-capture functions with RHISubmitCommandsAndFlushGPU() - Split PLATFORM_HAS_BSD_SOCKET_FEATURE_GETADDRINFO off from PLATFORM_HAS_BSD_SOCKET_FEATURE_GETHOSTNAME - Converted the PS4MallocCrash class into a generic one (that Wolf is now also using) - Added AddGenericToInQueueOnlineThread(), useful running a delegate on Online thread instead of game thread - Refactored the GL shader compiler to allow Wolf to modify behavior without a lot of if WOLF checks everywhere - Added ability in the cross compiler to convert the global uniform arrays into named uniform buffer objects - Added ability for GL shader compiler to output original resources names ("VertColor" instead of "u_v[3]" or whatever) - Added "FORCELODGROUP" console command that will apply a StaticMesh LODGroup to selected meshes in the editor. This can batch-Simplygonify all meshes in a level. Should maybe become an editor tool. - Added ability for arrays of structs to specify a property to be the key. So, with LODGroups, the Name key inside the struct can be the unique key, so when you have multiple .ini files in the hierarchy overriding the same LODGroup by name, it will repalce the first with the second, instead of adding two entries with the same name. Set by @ArrayName=KeyPropertyName. Per Object Config sections need a little different handling, which uses * (see BaseDeviceProfiles.ini) - Added ability to change DeviceProfiles at runtime. Use "dp.override <name>". If you do it again to another one, it will reset the settings to what they were originally, before applying the second new DP. This is because the second DP may not set all settings the first one did, but we want to undo the first settings that the second doesn't contain. - Added FRHICommandListImmediate::IsStalled() - returns true while FRHICommandListImmediate::StallRHIThread is happening - Changed runtime GetFeatureLevelMaxTextureSamplers() calls to the new GetMaxTextureSamplers() which can now be handled by the platform. Renamed GetFeatureLevelMaxTextureSamplers to GetExpectedFeatureLevelMaxTextureSamplers() (only used by the shader editor) to guess at what maybe the samplers count will be - but it's not guaranteed correct. - Renamed a UT copy of a global function to not linker-conflict - Changed the OOMBackupMemoryPool to allow each platform to set how much memory to allocate. See FPlatformMemory::GetBackMemoryPoolSize(). Defaults to 0, which was the previous behavior with the now removed FPlatformMemory::SupportBackupMemoryPool(), which was only true in Windows and PS4. - Added an OOM delegate so other systems can get a callback after OOM occurs (after deleting the backup memory pool if it exists) - Changed SetQualityLevels() (in Scalability.cpp) to no longer change the SetBy priority when setting CVars, and now keeps the SetBy the same as it was. Helps with conflicts between game settings and device profiles. See SetWithCurrentPriority() - Added GetRenderingThreadPriority to FPlatformAffinity to allow a platform override priority. Not sure about this one, so may remove it, or maybe add more priorities for all the threads? - Added a new file into the ini hierarchy to begin fixing the Engine/Base -> Project/Default -> Engine/Platform -> Project/Platform mess. We now have Engine/Base -> Engine/BasePlatform -> Project/Default -> Engine/Platform -> Project/Platform. However, Engine/Platform will soonm be deprecated as we move things over to Engine/BasePlatform, that are safe to move. Change 3126842 on 2016/09/15 by Michael.Trepka Make SAssertPicker's search box the default widget to focus on activate so that it doesn't get deactivated on Mac, where we get the window activation event in a tick after SAssertPicker creation. Change 3126956 on 2016/09/15 by Michael.Trepka Added support for compiling Vulkan shaders for Android on Mac Change 3127206 on 2016/09/15 by Michael.Trepka PR #2604: Remove some warnings. (Contributed by reapazor) Change 3127324 on 2016/09/15 by Michael.Trepka Allow third party dylibs on Mac to be loaded from plugin subfolders Change 3127924 on 2016/09/16 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3128369 on 2016/09/16 by Nick.Shin zlib 1.2.8 headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128377 on 2016/09/16 by Nick.Shin openssl 1_0_2h headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128383 on 2016/09/16 by Nick.Shin libcurl 7_48_0 headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128384 on 2016/09/16 by Nick.Shin libwebsockets 1.7.4 headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128464 on 2016/09/16 by Nick.Shin webRTC rev.12643 NOTE: VS2015 - only Win64 is available - Win32 versions is crashing (e.g. EpicGamesLauncher) at the moment NOTE: VS2013 - not tested (i'm working on getting a VS2013 pro license) - so not checking in with this changelist - also, VS2013 is no longer supported by webRTC build scripts, so it will be old anyways FUTURE NOTE: - will continue to try to get VS2015 Win32 functional - and am working on trying to get VS2013 tested headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128500 on 2016/09/16 by Nick.Shin zlib 1.2.8 - OSX headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128504 on 2016/09/16 by Nick.Shin openssl 1_0_2h - OSX headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128506 on 2016/09/16 by Nick.Shin libcurl 7_48_0 - OSX headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128508 on 2016/09/16 by Nick.Shin libwebsockets 1.7.4 - OSX headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128513 on 2016/09/16 by Nick.Shin webRTC rev.12643 - OSX headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128602 on 2016/09/16 by Nick.Shin webRTC rev.9862 - Win64 VS2013 NOTE: - not tested (i'm working on getting a VS2013 pro license) - checking in for testing purposes WARNING: - VS2013 is no longer supported by webRTC latest headers and lib updates part of [ zlib openssl libcurl libwebsockets webrtc ] updates Change 3128605 on 2016/09/16 by Nick.Shin re-enabling updated ThirdParySoftware libs: - zlib (v.1.2.8) - openssl (1.0.2h) - libcurl (7_48_0) - libwebsocket (v.1.7.4) - webRTC (rev.12643) to the codereviewers, in my attempt to ensure the older libs are still used for console, mobile and linux -- please refer to this checkin if i broke the build... Change 3128651 on 2016/09/16 by Nick.Shin fix Win32 build error from CL: #3128605 Change 3128704 on 2016/09/16 by Nick.Shin fix Win32 build error from CL: #3128605 - this time actually compiling it... Change 3128825 on 2016/09/16 by Dmitry.Rekman Linux: proper fix for too slow startup times (UE-35967). - Pull request #2793 by slonopotamus. - Now without stripping dependencies on libraries specified before. - Contains a work around for ld bug <2.25. Change 3128972 on 2016/09/16 by Nick.Shin fix to local build error. Change 3129283 on 2016/09/16 by Brent.Pease + Add Android local notification support based on existing system used for iOS + Initial API has been added for cancelling local notifications but the actual platform implementation will be done in the next release Change 3129494 on 2016/09/17 by Nick.Shin fix CIS build errors Change 3129503 on 2016/09/17 by Dmitry.Rekman Fix Linux build (case sensitivity issue). Change 3129514 on 2016/09/17 by Nick.Shin fix CIS build errors for consoles - missing zlib include path special thanks to Dmitry.Rekman for pointing me in the right direction Change 3129647 on 2016/09/17 by Dmitry.Rekman Linux: fix non-unity build. Change 3131043 on 2016/09/19 by Nick.Shin archiving build instructions/steps when building: - zlib (v.1.2.8) win: #3128369 osx: #3128500 - openssl (1.0.2h) win: #3128377 osx: #3128504 - libcurl (7_48_0) win: #3128383 osx: #3128506 - libwebsocket (v.1.7.4) win: #3128384 osx: #3128508 - webRTC win: #3128464 (rev.12643 for vs2015) + 3128602 (rev:9862 for vs2013) -- NOTE: win32 is WiP osx: #3128513 Change 3132801 on 2016/09/20 by Dmitry.Rekman Linux: support specifying default OpenGL version via configs (UE-34777). - The first targeted RHI is going to be used. Change 3132905 on 2016/09/20 by Josh.Adams - Fixed up some paths with the WolfPlat rename Change 3133148 on 2016/09/20 by Josh.Adams - Only show UT EULA if PLATFORM_DESKTOP Change 3133152 on 2016/09/20 by Josh.Adams - Beginning support for applets. Disabled unless you have a special SDK with applet support. Change 3133169 on 2016/09/20 by Josh.Adams - Fixed issue with Wolf access but no SDK installed Change 3133344 on 2016/09/20 by Daniel.Lamb Fixed issue with Iterative cooking not detecting changes to ini files which are loaded using LoadLocalFile. Added new flag to limit number of concurrent shader compiles. #test Cook QAGame, Cook Paragon Change 3133345 on 2016/09/20 by Daniel.Lamb FRedirectCollector collects string asset references all the time when running the editor. #test Cook paragon cook QAGame. Change 3133852 on 2016/09/21 by Luke.Thatcher [PLATFORM] [PS4] [^] Performing merge between 3.508.201 LCUE files in CarefullyRedist and Dev-Platform to populate integration history. No files have actually changed in this CL, only Perforce metadata is updated. Change 3133875 on 2016/09/21 by Luke.Thatcher [PLATFORM] [PS4] [^] Performing merge between 3.508.201 LCUE files in CarefullyRedist and Dev-Platform to populate integration history. No files have actually changed in this CL, only Perforce metadata is updated. (Attempt 2) Change 3134403 on 2016/09/21 by Jonathan.Fitzpatrick Per PS4 documentation, app_type requires the alternate spelling of 'upgradeable', 'upgradable'. Change 3134544 on 2016/09/21 by Josh.Adams - Reduced UT textures for Wolf Change 3134915 on 2016/09/21 by Jonathan.Fitzpatrick FPS4Time::SystemTime now calculates the local machine time, instead of UTC. #jira UE-35170 Change 3135036 on 2016/09/21 by Michael.Trepka Quit the UE4EditorServices app when quitting the Launcher if it was the launcher that spawned the services process Change 3135142 on 2016/09/21 by Jonathan.Fitzpatrick GetBackMemoryPoolSize returned bool on PS4 by accident, should be uint32 Change 3135292 on 2016/09/21 by Jeff.Campeau Change include order to favor the XDK edition specific headers where available. Change 3136414 on 2016/09/22 by Josh.Adams - Fixed a checkf() that had the case reversed #jira ue-36311 Change 3137082 on 2016/09/22 by Dmitry.Rekman Added support for Linux installed builds to 4.14 Change 3137220 on 2016/09/22 by Dmitry.Rekman Linux: do not rebuild hlslcc on each setup. - Now that hlslcc is set to use bundled libc++ there should be no STL binary compatibility conflicts between the engine and hlslcc binary. Change 3137227 on 2016/09/22 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3137259 on 2016/09/22 by Dmitry.Rekman Linux installed build: fix CIS (missed one .csproj) Change 3137290 on 2016/09/22 by Dmitry.Rekman Linux installed builds: fix for the resulting directory. Change 3137291 on 2016/09/22 by Chris.Babcock Restore texture filtering mode properly when movie played on Android #jira UE-36342 #ue4 #android Change 3137376 on 2016/09/22 by Dmitry.Rekman Linux: re-enabled crash handler stack smash protection. - Race condition in FRunnableThreadPThread has been previously fixed. Change 3138498 on 2016/09/23 by Dmitry.Rekman Linux: add missed package for installed builds. - mono-devel package for resgen2. Change 3138523 on 2016/09/23 by Dmitry.Rekman Linux: Update hlslcc now that we're not rebuilding it each time. Change 3138658 on 2016/09/23 by Josh.Adams - Moved UT's Social Plugin into NotForLicensees Change 3139042 on 2016/09/23 by Dmitry.Rekman Linux: more robust check of installed packages. - Also added mono-devel to the list of packages installed on 14.04. Change 3139674 on 2016/09/26 by Dmitry.Rekman Fix crash when editing widget blueprints (UE-35185). - Caused by name collision due to copy/pasted code; aliased classes diverged and this resulted in all kinds of weird memory stomping. - Renamed the class and also applied the same workaround (removing static) to prevent likely crashes on exit as happened with the original class (see UE-30795). Change 3140203 on 2016/09/26 by Josh.Adams - Wolf Fix for SHIPPING Change 3140206 on 2016/09/26 by Josh.Adams - NEX work, still in progress Change 3140276 on 2016/09/26 by Josh.Adams - Fixed Wolf compile error Change 3140485 on 2016/09/26 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3140570 on 2016/09/26 by Dmitry.Rekman SDL2: Delete obsolete files. - We now have local changes to SDL2, so this tarball is no longer accurate and just takes unnecessary space. Change 3140577 on 2016/09/26 by Dmitry.Rekman Fix CudaTest monolithic build. - Not the best fix, the better fix is to build against bundled libc++. Change 3141184 on 2016/09/27 by Keith.Judge Add FXboxOneApplication::GetXboxOneApplication to fix a save/load game assert. #jira UE-35973 Change 3141623 on 2016/09/27 by Chris.Babcock Support hiding virtual keyboard on Android #jira UE-34201 #ue4 #android Change 3141887 on 2016/09/27 by Joe.Graf Added support for additional plugin directories that are specified by the .uproject file New plugin wizard adds to the additional plugin directories if the user specifies a directory outside of Engine/Plugins or Game/Plugins Change 3141916 on 2016/09/27 by Josh.Adams - Worked around compile issues (at least with Wolf UT). This is well documented in a Jira (UE-29925) Change 3141926 on 2016/09/27 by Josh.Adams - Support for skipping Wolf user selector (-nologinui) Change 3141938 on 2016/09/27 by Chris.Babcock Allow Android media player to seek past 999ms (contributed by rcywongaa) #jira UE-36453 #PR #2797 #ue4 #android Change 3142207 on 2016/09/27 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3142219 on 2016/09/27 by Josh.Adams - Wolf PhysX 3.4 libs and includes Change 3142220 on 2016/09/27 by Josh.Adams - File that had to be fixed up after main merge (missed adding it to the huge integrate CL) Change 3142314 on 2016/09/27 by Chase.McAllister #jira UE-35011 fixes to some assets to remove redundancies/output log spam Change 3142510 on 2016/09/27 by Daniel.Lamb Fixed up resave lightmaps commandlet so that world transforms don't get applied twice. #jira UE-35942 Change 3142650 on 2016/09/27 by Chris.Babcock Android support for Linux by yaakuro - requires CodeWorks for Android Linux installed and OpenJDK 1.8 - need to set Android SDK paths manually in Project Settings #jira UE-32752 #jira UE-32753 #PR #2564 #PR #2565 #ue4 #android #linux Change 3142802 on 2016/09/27 by Dmitry.Rekman Upgrade to SDL 2.0.5-ish (still technically 2.0.4). - Upstream revision 10374:dccf51aee79b. - Merged all our changes hopefully. Change 3143075 on 2016/09/28 by Luke.Thatcher [RENDERING] [~] Add check to FBatchedElements::AddSprite to catch null textures. If the texture is null here, we will crash later in the RHI. At least now we'll get the callstack of the code adding the null textured sprite, since I don't have a repro. #jira UE-33077 Change 3143219 on 2016/09/28 by Daniel.Lamb Added new is compiling function which tells you if it's really compiling instead of lying. If def out additional logging for debugging shader compilation issue for 4.14 release. Change 3143428 on 2016/09/28 by Luke.Thatcher [PLATFORM] [PS4] [+] Use PS4 SDK 4.008.061 Change 3143488 on 2016/09/28 by Daniel.Lamb Changed defaults for skip cooking editor content to true. Change 3143526 on 2016/09/28 by Daniel.Lamb Increased the concurrent shader compile limit while in the cooker. #test Cook paragon Change 3143874 on 2016/09/28 by Chris.Babcock Read Android environment variables from .bashrc on Linux #jira UE-36565 #ue4 #android #linux Change 3143911 on 2016/09/28 by Dmitry.Rekman Fix SDL EGL API binding (UE-18979). - Contains PR #1398 by x414e54. - Also fixes offscreen backend that needed to provide a global mouse state after the SDL upgrade. Change 3143929 on 2016/09/28 by Daniel.Lamb Removed some more temporary logging. #test Cook paragon Change 3143959 on 2016/09/28 by Jeff.Campeau Media Player for Xbox One Change 3143997 on 2016/09/28 by Dmitry.Rekman Linux: faster linking in Debug. - Do not apply --as-needed to Debug build since taking a hit of several tens of seconds on startup is better than linking for ~4 more minutes when iterating. Change 3144004 on 2016/09/28 by Dmitry.Rekman Linux: make SCW dump core on crash in debug builds. - If the editor (not SCW itself) is built in Debug, make SCW dump cores if they ever crash. This makes it debug easier (at the risk of running of disk space). Change 3144007 on 2016/09/28 by Dmitry.Rekman Linux: Allow equals character in command line parameter value (UE-26406). - PR #2019 by bozzaro. - Allows passing parameters like -Switch=Key=Value. Change 3144042 on 2016/09/28 by Jeff.Campeau Add tag for DX12 support being experimental in target settings. #jira UE-36150 Change 3144068 on 2016/09/28 by Dmitry.Rekman Linux: enable using xgConsole in UAT (UE-28096). - PR #2144 by bozzaro. - Picks correct xgConsole binary. - Allegedly fixes crash in CombineXGEItemFile on mono. Change 3144120 on 2016/09/28 by Michael.Trepka Copying //Tasks/UE4/Dev-HighDPI/... to //UE4/Dev-Platform/... Change 3144172 on 2016/09/28 by Chris.Babcock Add libpng 1.5.27 for Android #jira UE-36573 #ue4 #android Change 3144318 on 2016/09/28 by Chris.Babcock Correct logic for checking .bashrc on Linux #ue4 #android Change 3144331 on 2016/09/28 by Dmitry.Rekman Linux: repair ARM server builds. - Also: print info about C++ library being used and allow the override via environment variable UE4_LINUX_USE_LIBCXX (either 0 or 1). Change 3144354 on 2016/09/28 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) this is intermediate, not fully working Change 3144368 on 2016/09/28 by Josh.Adams - Moved the new Social files into NFL Change 3144395 on 2016/09/28 by Chris.Babcock Add missing functions for AndroidWebBrowserWindow #ue4 #android Change 3144417 on 2016/09/28 by Josh.Adams - Probable fix for FWebBrowserWindow missing virtuals Change 3144438 on 2016/09/28 by Jeff.Campeau XDK updated to 160802 Change 3144569 on 2016/09/29 by Dmitry.Rekman Linux: allow a selectable clock source (UE-36564). - The engine will now select the best performing clock on start instead of hard-coding CLOCK_REALTIME. This will happen as part of global initialization before main() to prevent clock skew. - Also fixes a problem of the engine not being able to start on Windows 10 since previously hard-coded clock id was not supported there. #tests Compiled and ran a few targets (including non-monolithic). Tried bogus clock sources. Haven't actually tried on Win10 (don't have a machine atm). Change 3145108 on 2016/09/29 by Joe.Graf Fixed cases where path relative external plugin paths would generate the wrong path when running Unreal Header Tool (and probably other tools) Change 3145245 on 2016/09/29 by Joe.Graf #wolf Checking in removal of plugin use on Win64 per Josh's request Change 3145514 on 2016/09/29 by Will.Fissler Updated Mac Info.plist files to disable high DPI on macOS 10.12 Change 3145538 on 2016/09/29 by Josh.Adams - Worked around a physics task graph issue with using the new lock free stuff on Wolf, joining PS4 and XboxOne. Wolf was crashing on some boots. Change 3145540 on 2016/09/29 by Josh.Adams - Fix for checking some Wolf dev tool installation existence - Fix for various Wolf build issues - Fix for Wolf devices not showing up in Launch on Change 3145542 on 2016/09/29 by Josh.Adams - Pulled over Wolf changes from Wolf branch into Dev-Platform Change 3145572 on 2016/09/29 by Josh.Adams - Cleaned up Wolf SDK error logs which really messed up GenProjectFiles for some class of people. #jira UE-36591 Change 3145769 on 2016/09/29 by Chris.Babcock Remove duplicate platforms from deploy list in UFE #jira UE-36636 #ue4 Change 3146061 on 2016/09/29 by Chris.Babcock Linux: be less spammy in log when launching external procs #jira UE-36638 #ue4 #linux Change 3146208 on 2016/09/29 by Dmitry.Rekman Linux: fix PhysX crash (UE-36613). - PX_RESTRICT was unwarrantedly applied to memMove, allowing clang to replace the memmove() call to memcpy() at -O2 and above. - This caused PxArray::remove() to duplicate the elements of its array (in POD case) and this opened doors to all kinds of fun. #jira UE-36613 Change 3146476 on 2016/09/30 by Josh.Adams - Moved a UBT log that could pollute QA logs with Wolf secrets to Verbose Change 3146554 on 2016/09/30 by Josh.Adams - Removed another wolf secret log Change 3146626 on 2016/09/30 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3146712 on 2016/09/30 by Josh.Adams - Fixed case for building Android on Linux #jira #UE-36652 Change 3146844 on 2016/09/30 by Josh.Adams - Removed ES2 shader compiling from TVOS, and force Metal compiling #jira UE-36306 Change 3146865 on 2016/09/30 by Daniel.Lamb Removed temp logging for materials #test Launch on paragon Change 3146874 on 2016/09/30 by Dmitry.Rekman Linux: add rpath for libTextureConverter.so (UE-36620). Change 3147030 on 2016/09/30 by Josh.Adams - Version check workaround for IOS9.3/TVOS9.2 defining __IPHONE_10_0 which breaks our IOS10 code checks #jira UE-36623 Change 3147151 on 2016/09/30 by Josh.Adams - Fixed zlib.build.cs for XboxOne, which came in from another branch without an include path, yet somehow main is compiling? Change 3147621 on 2016/09/30 by Michael.Trepka Fix for setting up RPATHs for third party dylibs for packaged code-based games on Mac Change 3147712 on 2016/09/30 by Josh.Adams - Fixed metal crash StrategyGame crash. Recent code was checking IsES2Platform for HDR decoding in scene capture, and Metal hasn't been IsES2 since may. Changed to IsMobilePlatform. #jira UE-36225 Change 3147725 on 2016/09/30 by Josh.Adams - Fixed yet another Wolf log for people with Wolf access but no SDK [CL 3147801 by Josh Adams in Main branch]
2016-09-30 21:21:09 -04:00
void FIOSLocalNotificationService::CancelLocalNotification(const FString& ActivationEvent)
{
// TODO
}
Copying //UE4/Dev-Platform to //UE4/Main (Source: //UE4/Dev-Platform @ 3008177) ========================== MAJOR FEATURES + CHANGES ========================== Change 2948322 on 2016/04/19 by Nick.Shin update libwebsockets to v1.7.4 part 4 of 4 - doing this in stages for tracking purposes #jira UEPLAT-1246 - Update libWebsockets #jira UEPLAT-1221 - update websocket library #jira UEPLAT-1204 - Rebuild libwebsockets with SSL Change 2970016 on 2016/05/07 by Nick.Shin undo all of the following upgrades: - zlib - openssl - libcurl - libwebsockets and reset webrtc #jira UE-30298 - Fortnite and Orion crash on login #lockdown josh.adams Change 2970373 on 2016/05/09 by Lee.Clark PS4 - Fix NumInstances not getting reset after DrawIndirect calls Change 2972873 on 2016/05/10 by Michael.Trepka Correct initial position for SlateViewer windows on Mac Change 2974363 on 2016/05/11 by Mark.Satterthwaite Fix invoking buils using distcc from UFE - the command-line executed to access the number of parallel tasks was incorrect. Change 2975921 on 2016/05/12 by Michael.Trepka Removed unused AdjustWindowRegion declaration from LinuxWindow.h #codereview Dmitry.Rekman Change 2977002 on 2016/05/13 by Michael.Trepka Make sure dSYM generation action in UBT on Mac does not start before the source dylib is ready #codereview Ben.Marsh Change 2977337 on 2016/05/13 by Brent.Pease UE-27805 - Adding special characters into the BundleDisplayName or BundleName causes packaging error + Prevent illegal characters from being entered in the packaging UI + Report an error from iPhonePackager if a illegal bundle id is specified + Convert special characters to XML equivalents - Correctly check for the presence of iTunes 12 when packaging iOS games on Windows - Improve ios certificate and provision message in package settings UI #codereview peter.sauerbrei Change 2977509 on 2016/05/13 by Brent.Pease + Fix mac compile error Change 2978036 on 2016/05/14 by Mark.Satterthwaite One-line tweak that resolves incorrect rendering of the colour LUT because float imprecision allows -ve values to be passed into a call to pow which then generates NaN. #jira UE-30777 Change 2978037 on 2016/05/14 by Mark.Satterthwaite Fix a heap-use-after-free bug spotted by AddressSanitizer - you can't assume that the UObject system will be available in ShutdownModule() - on OS X it may have been killed a long time ago. Change 2978333 on 2016/05/16 by Lee.Clark Fix packaging of non-code projects when plugins are enabled #codereview Peter.Sauerbrei Change 2978780 on 2016/05/16 by Mark.Satterthwaite Reduce temporary allocations required to set uniform parameters in Metal. Change 2979680 on 2016/05/16 by Nick.Shin editor's HTML5 platform settings was missing due to the emscripten SDK move should have been included with CL: #2946251 Change 2979681 on 2016/05/16 by Nick.Shin cleaned up websocket processing for HTML5 #jira UE-13657 - HTML5 plugin OnRawRecieve overflow Change 2979701 on 2016/05/16 by Brent.Pease UE-28421 - Message box cannot be closed after accessing the home screen on iOS + Implement a timeout when waiting for a reply after sending background/foreground/suspend events from the main thread to the game thread. This solves the immediate problem presented in the jira bug report, however, there are deeper issues with the consequences of blocking the game thread that are not addressed. Perhaps structuring the game thread loop to know about modal dialogs so that it can receive these events even when a modal dialog is up could be a better longer term solution Change 2980766 on 2016/05/17 by Jeremiah.Waldron Adding Android build support for HarfBuzz - using a combination of android-cmake (from https://github.com/taka-no-me/android-cmake) to create the build files and Visual Studio 2015 to compile them - Adding Debug and RelWithDebInfo compiled binaries to harfbuzz-1.2.4/Android/<arch>/<config> Tested armv7 with TextShapingTest project on a GalaxyNote3 and text showed up correctly #jira UE-28586 #codereview chris.babcock Change 2980953 on 2016/05/17 by Jeremiah.Waldron Changing HarfBuzz build script and libs to use Release instead of RelWithDebInfo #jira UE-28586 Change 2981039 on 2016/05/17 by Jeff.Campeau ICMP support disabled for Xbox One and basic address processing wrappers provided (needed for Oodle support) Change 2981054 on 2016/05/17 by Jeff.Campeau Enable Live OSS for Orion on Xbox One Change 2981553 on 2016/05/18 by Jeff.Campeau Enable Oodle for Xbox One Change 2981555 on 2016/05/18 by Jeff.Campeau Scalability settings for Xbox One Change 2981774 on 2016/05/18 by Keith.Judge Xbox One - Duplicating Movie Player fix from 4.12. Change 2981789 on 2016/05/18 by Keith.Judge Xbox One - Duplicate fast semantics rendertarget unbind/clear/rebind fix from 4.12. Change 2981802 on 2016/05/18 by Keith.Judge Xbox One - Duplicate of distance field AO/Shadow fixes from 4.12. Change 2981875 on 2016/05/18 by Keith.Judge Xbox One - Dynamic VB/IB refactor. Duplicated from 4.12. Change 2981900 on 2016/05/18 by Keith.Judge Xbox One - D3D11Query refactor. Duplicated from 4.12 Change 2981945 on 2016/05/18 by Nick.Shin filled out response headers for HTML5 platform #jira UE-26047 - HTML5 HTTP Response Headers not implemented Change 2981981 on 2016/05/18 by Lee.Clark PS4 - Fix COTF not updating files #codereview Daniel.Lamb Change 2982246 on 2016/05/18 by Michael.Trepka Fixed Mono compile errors in UT build scripts Change 2983869 on 2016/05/19 by Mark.Satterthwaite Explicitly retain/release all the MTLTexture objects in FMetalSurface without the assumptions about them being the same object - the recent stencil & SRV related changes make those assumptions invalid and could lead to over-releasing some textures. #jira UE-29557 Change 2983871 on 2016/05/19 by Mark.Satterthwaite Pool Metal texture update buffers to reduce churn. Change 2983892 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2972885: Enable Metal resource lifetime delay on all platforms, not just iOS to try and address intermittent invalid resource errors. Change 2983898 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2982825: Correctly wait for the dispatch semaphore when clearing the Metal resource free lists. Change 2983911 on 2016/05/19 by Mark.Satterthwaite Change Metal SubmitCommandsHint to use an enum of flags rather than boolean variables to control behaviour so that its clearer to the reader what is going to happen. Change 2983916 on 2016/05/19 by Mark.Satterthwaite Duplicate 4.12 CL #2974765: Workaround for UE-30069 - on Nvidia Macs we are breaking the GMux swap the second time we run the engine and it isn't clear why, so instead explicitly select the Metal device ourselves and don't allow the OS to swap the GPU driving the display. This will potentially reduce performance a little if the discrete GPU isn't already driving the display but until we know how we are clobbering the GMux/driver it is all we can do. This only applies to 10.11.5 with the default OS X drivers where there is more than one GPU in the system, earlier versions of OS X and the Nvidia WebDrivers are unaffected. Change 2984874 on 2016/05/20 by Keith.Judge Xbox One - Re-enable shader DXBC intermediate bytecode stripping, except for geometry and hull shaders where there's a possibility of runtime recompilation in certain combinations. Saves ~2MB in TM-ShaderModels, will save more in larger maps. #jira UEPLAT-1295 Change 2985446 on 2016/05/20 by Mark.Satterthwaite Remove the non-functional -metaldebug option from MetalRHI. Change 2985827 on 2016/05/20 by Nick.Shin call EndSession() onbeforeunload() note: API CHANGE - HTML5JavaScripteFx.{js,h} - UE_MakeHTTPDataRequest() #jira UE-22285 - Session End events are not generated for HTML5 Change 2986013 on 2016/05/20 by Jeremiah.Waldron PR #2387: In-App Purchases - parameters needed for Receipt Validation (Contributed by gameDNAstudio) Also touches IOS because of added RawPrice member in FInAppPurchaseProductInfo Pulled from Release-4.12 CL #jira UE-30782 #codereview chris.babcock, Peter.Sauerbrei Change 2986057 on 2016/05/20 by Mark.Satterthwaite Further changes to ensure that UE-30710 really is fixed while also not live-leaking memory in MetalRHI. Change 2986059 on 2016/05/20 by Mark.Satterthwaite Move the Metal uniform buffers into the same resource pool as all the other buffers and add stats for how many buffers are in the pool, how much memory is in use, free and wasted (due to aligned-buffer sizes). Change 2986060 on 2016/05/20 by Mark.Satterthwaite Disable tiled-reflections on Nvidia & Intel Metal until they sort out the sample command on cube-arrays ignoring the lod level. Change 2986063 on 2016/05/20 by Mark.Satterthwaite Missing change from previous CL. Change 2986066 on 2016/05/20 by Mark.Satterthwaite More Metal stats tracking the number & memory size of id<MTLBuffer>'s allocated/released each frame. Change 2986455 on 2016/05/23 by Keith.Judge Xbox One - Fix precompile promise in shader compiler to not stop subsequent defines from being parsed by D3DCompiler. Change 2986886 on 2016/05/23 by Mark.Satterthwaite Duplicate 4.12 CL #2986880: Fix UE-31124 due to bad array iteration logic - amazing that this hadn't been seen earlier. Change 2986955 on 2016/05/23 by Brent.Pease + Do not error out if "[PROJECT_NAME]" is in the bundle ID #codereview peter.sauerbrei Change 2987304 on 2016/05/23 by Chris.Babcock Remove old Android platforms #ue4 #android #codeview Josh.Adams Change 2987571 on 2016/05/23 by Mark.Satterthwaite Duplicate CL #2967998: Integrate - MaterialParameterCollections now create default resources (uniform buffers) which are used when no valid FScene is present (eg DrawTile while exporting materials to lightmass) #jira UE-31111 Change 2987591 on 2016/05/23 by Mark.Satterthwaite Remove usage of MTLRender/ComputeEncoder setSamplerState/s calls that take Min & Max Lod overrides - they currently don't work as expected on some GPU drivers and as we don't use them anywhere and I can't see that we will removing them costs us nothing and fixes tiled reflections on Nvidia with Metal SM5. Change 2987679 on 2016/05/23 by Mark.Satterthwaite Re-enable tiled reflections on Nvidia by default now that they work. Change 2987799 on 2016/05/24 by Mark.Satterthwaite Add a shader compile option "r.Shaders.ZeroInitialise" that we can turn on to force explicit zero-initialisation of local & temporary variables in hlslcc - so far only implemented for Metal. The default behaviour remains to omit zero-initialisation but the option is helpful to eliminate or track down uninitialised access in shaders that are causing real bugs (e.g. POM material relying on zero-initialised loop counters causing hangs/bad rendering on Mac). Change 2989395 on 2016/05/25 by Lee.Clark PS4 - Fix shader output / render target format mismatch for sparse MRT. Change 2990003 on 2016/05/25 by Jeremiah.Waldron When creating our own ConfigCacheIni in GetConfigCacheIni_APL, do not assume that the Engine ini was requested. Instead use the baseIniName passed to the function. Change 2990393 on 2016/05/25 by Mark.Satterthwaite Back out changelist 2961310 - causes more problems than it solves. DistanceField rendering will still work on Intel Metal SM5 and may work on AMD but will be broken on Nvidia due to a bad access within the compute shader - there's no bounds checking in Metal... Change 2990516 on 2016/05/25 by Brent.Pease + UEPLAT-1294 - Support for local notifications + UEPLAT-1254 - Add BP event for device orientation change + Added a new class based on UGameInstance for mobile device callbacks + Ensured IOSAppDelegate.cpp follows convention for lambda functions Change 2991361 on 2016/05/26 by Jeremiah.Waldron Move InAppPurchase class to StoreHelper.java so GooglePlay and Amazon store helpers can use it Change 2992450 on 2016/05/27 by Mark.Satterthwaite Optional r.Shaders.BoundsChecking flag to control whether shader platforms should manually enforce buffer access bounds - HLSL returns zero or ignores invalid reads & writes but Metal leaves the behaviour undefined and some drivers then fail. By default this is off and its whatever the native platform behaviour is, enabling it will cost some amount of performance as the shader translator inserts additional instructions to try and match D3D as accurately as possible. This is required to fix GPU restart errors on some Metal drivers when using SM5 rendering features including DistanceField shaders. Change 2993027 on 2016/05/27 by Mark.Satterthwaite Fix typo for new CFLAG_BoundsChecking enumeration value. Change 2993594 on 2016/05/27 by Mark.Satterthwaite Build fix - check not assert... Change 2993595 on 2016/05/27 by Mark.Satterthwaite Fix typo from Xcode hang... Change 2993614 on 2016/05/28 by Mark.Satterthwaite At least for now enable shader zero-initialisation and bounds-checking on Mac to ensure that Metal shaders are compiled with semantics that approximate those HLSL assumes. This may cost some performance but will avoid a few GPU restarts on some vendor drivers. Change 2993747 on 2016/05/28 by Mark.Satterthwaite Separate texture & buffer references in the Metal backend as they bind to separate arrays in the runtime to avoid giving the side-table buffer an innaccessible binding index. Also the side-table doesn't need to be emitted if no buffer SRV or UAV is used. Change 2994256 on 2016/05/31 by Lee.Clark PS4 - Fix unitialized Head Position from HMD tracker when tracking fails. Fixes a problem with A3D audio not working. #codereview Chad.Taylor,Aaron.McLeran Change 2994281 on 2016/05/31 by Rolando.Caloca DP - Allow hlslcc to process type casts containing the 'const' keyword - it isn't strictly complete as it will simply omit the type qualifier from the cast in the AST but it is sufficient for FortniteFoliage_MasterMaterial to compile. #codereview Mark.Satterthwaite, Dmitry.Rekman #jira UE-31411 Change 2994467 on 2016/05/31 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 2994493 on 2016/05/31 by Daniel.Lamb Fixed issue with DDC commandlet not caching things from the startup packages list. Change 2994644 on 2016/05/31 by Mark.Satterthwaite Updated hlslcc Mac binaries with fix for UE-31411 which RCO accepted and submitted + script for building parsers on POSIX OSes hooked up to an Xcode scheme in the project. Change 2996074 on 2016/06/01 by Lee.Clark PS4 - Fix GS mode not getting disabled when using parallel contexts. #codereview Marcus.Wassmer Change 2996129 on 2016/06/01 by Brent.Pease Manual merge of Pete's dsym generation fix (CL#2996089) from the 4.12 branch. Change 2996130 on 2016/06/01 by Jeremiah.Waldron PR #2387 part 2 (Contributed by gameDNAstudio) Adding ability to consume purchases during GooglePlay RestorePurchases This also touches IOS due to changes to base classes and function signatures #codereview chris.babcock, Peter.Sauerbrei Change 2996441 on 2016/06/01 by Jeremiah.Waldron Relates to PR #2387: Adding ability to consume purchases during GooglePlay RestorePurchases (Contributed by gameDNAstudio) Missing changes from part 2 reworked so that there is still only one RestorePurchases function which takes the product IDs and consumable flags. I reflected this in StoreHelper so no casting is necessary in GameActivity and the soon-to-be-added AmazonStoreHelper in the GameCircle plugin will still work dynamically with GameActivity since it will call StoreHelper functionality rather than a GooglePlayStoreHelper specific function. #codereview chris.babcock Change 2996514 on 2016/06/01 by Jeff.Campeau Fix merge issue from main #jira UE-31502 Change 2996740 on 2016/06/01 by Jonathan.Fitzpatrick https://jira.ol.epicgames.net/browse/UE-31446 Two PS4 source files fail during unity builds due to name conflict with handleReserveFailed. Renamed handleReserveFailed to handleReserveFailedLightweight Change 2997235 on 2016/06/01 by Jeremiah.Waldron RestorePurchases fix up in Match3 since the new Restore consumable stuff adds an additional pin to the Restore node. The IAP product in Match3 is non-consumable so just passing an empty array where necessary Change 2997241 on 2016/06/01 by Jeremiah.Waldron OnlineSubsystemGameCircle Plugin - Leaderboards - Achievements - Friends - IAP - External UI Interface - Runtime Settings in Project Settings Plugin section when plugin is enabled - Disabled by default #jira UEPLAT-105 #codereview chris.babcock Change 2997618 on 2016/06/02 by Lee.Clark #UE4Docs: Removed PS4MapFileUtil info Change 2997840 on 2016/06/02 by Jeremiah.Waldron Removing trace logging from OnlineSubsystemGameCircle_APL Change 2998754 on 2016/06/02 by Brent.Pease Change BlueprintMobileLibrary to BlueprintPlatformLibrary Change 3000762 on 2016/06/03 by Jeff.Campeau Add example rating info to ShooterGame Change 3001037 on 2016/06/04 by Brent.Pease + Add ui screens for delegate test, local notification test, and iap test + Implement delegate test Change 3001250 on 2016/06/05 by Brent.Pease + Initial pass at IAP test screen Change 3001639 on 2016/06/06 by Jeff.Campeau Fix Xbox One build issue with DX12 #codereview Zabir.Hoque Change 3002574 on 2016/06/06 by Jeremiah.Waldron Adding Android Install Location to Android platform runtime settings and manifest generation Change 3002780 on 2016/06/06 by Brent.Pease + Initial implementation of local notification test Change 3003005 on 2016/06/06 by Jeremiah.Waldron OnlineSubsystemGameCircle plugin - adding setting for Fire TV support. Using that specification in the APL to Add/Update android.hardware.touchscreen feature required attribute Change 3004392 on 2016/06/07 by Jeremiah.Waldron Fixing typo in APL comment :) Change 3005768 on 2016/06/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3005929 on 2016/06/08 by Josh.Adams Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform) Change 3006151 on 2016/06/08 by Peter.Sauerbrei fix for LocalNotifications not available on TVOS #lockdown josh.adams Change 3006183 on 2016/06/08 by Brent.Pease Manual merge CL#3000242 from Release-4.12 into Dev-Platform #lockdown josh.adams Change 3006296 on 2016/06/08 by Peter.Sauerbrei submit an updated iPhonePackager and support DLLs #lockdown josh.adams Change 3006378 on 2016/06/08 by Peter.Sauerbrei fix for API update to RestorePurchases #codereview brent.pease #lockdown josh.adams #lockdown nick.penwarden [CL 3008183 by Josh Adams in Main branch]
2016-06-09 17:45:44 -04:00
void FIOSLocalNotificationService::GetLaunchNotification(bool& NotificationLaunchedApp, FString& ActivationEvent, int32& FireDate)
{
NotificationLaunchedApp = AppLaunchedWithNotification;
ActivationEvent = LaunchNotificationActivationEvent;
FireDate = LaunchNotificationFireDate;
}
void FIOSLocalNotificationService::SetLaunchNotification(FString const& ActivationEvent, int32 FireDate)
{
AppLaunchedWithNotification = true;
LaunchNotificationActivationEvent = ActivationEvent;
LaunchNotificationFireDate = FireDate;
}