#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870584 by ryan durand in Main branch]
#lockdown Nick.Penwarden
#rb none
Copying //UE4/WEX-Staging to //UE4/Dev-Main (Source: //WEX/Main/Engine @ 3740665)
#lockdown Nick.Penwarden
Change 3739326 by Ben.Zeigler
Change iteration order of depends nodes so it lists hard management references before soft management references, this is better for the UI when lots of references exist
Update text for loading custom asset registry bin to be clearer
Change 3739000 by John.Opila
Caching optimization for text widget desired size.
Change 3713551 by David.Nikdel
Allow Set Properties to recognize Json array values as importable.
Change 3712485 by Josh.May
Added Pete's fix for the PLATFORM_TVOS/PLATFORM_IOS #define conflict introduced by mach-o/loader.h
Change 3700174 by Chris.Babcock
Fix setFilters crash on some Android devices
Change 3691531 by Josh.May
Fixed an intermittent crash that occurred when opening the AssetAuditBrower. AssetManagerEditorModule's CurrentRegistrySource was getting set too early, becoming invalid in the event that RegistrySourceMap is resized.
Change 3688409 by Gil.Gribb
Critical fix for an extremely rare race condition on async IO.
Change 3687529 by josh.may
Force layout recalculations for single-pass layout SScaleBoxes when their final scale is zero. This tends to occur in calls to SearchForWidgetRecursively before a SScaleBox's AllottedGeometry has been calculated.
Change 3684788 by Peter.Sauerbrei
fix for archive generation on the build machines
Change 3684320 by john.opila
Workaround for widgets disappering. Ensuring scale is never 0 so we don't get divide by zero.
Change 3684042 by Peter.Sauerbrei
more logging to figure out why there is not data in the Applicaiton diretory of the archive
Change 3678620 by Ben.Zeigler
Minor text changes to size map
Change 3678314 by Ben.Zeigler
Add Make Collection With References and Audit References to Size Map to easily allow inspecting the specific set of filtered packages in other tools
Change 3677875 by Ben.Zeigler
Fix crash in size map from keeping reference to node after map was resized, and undo the Name->DisplayName rename as it could affect licensees
Change 3676899 by Peter.Sauerbrei
narrowed down to the plist data, trying to figure out if it is missing or not
Change 3676570 by Peter.Sauerbrei
more logging to track down the archive error
Change 3676293 by Peter.Sauerbrei
fix for compile failure on IOS
Change 3676172 by Peter.Sauerbrei
potential fix for missing icons in the ipa when run through the build machines
Change 3673544 by Ben.Zeigler
Sort AllChunksInfo alphabetically so the order is consistent accross build and platforms to facillitate diffing
Change 3671597 by Peter.Sauerbrei
Merging
//UE4/Dev-Mobile/Engine/...
to //WEX/Main/Engine/...
Change 3670932 by Ben.Zeigler
Change it so cooking with the AssetManager writes out AllChunksInfo.csv next to the DevelopmentAssetRegistry, but not the per-chunk csv files as those are not useful. Also made the size counts platform accurate
Change 3670906 by Peter.Sauerbrei
update WEX for building with Xcode 9
Change 3660026 by Josh.May
Moved SWebBrowserView's parent window "searches" to OnPaint. There's definitely something wrong with FindWidgetWindow... Even after deferring SWebBrowserView's calls to FindWidgetWindow until first Tick, the same widget layout artifacts could occur after opening multiple SWebBrowserViews. And, as Nick pointed out in the related email thread, this approach is also more efficient.
Change 3655411 by Josh.May
Ensure SWebBrowserView's parent window searches are deferred until after Construct. We haven't puzzled through it yet, but calling FindWidgetWindow during Construct seems to corrupt some Slate state. Deferring this search until later gets around the issue and makes sense anyway, given the widget isn't added to the hierarchy until after Construct.
Change 3655407 by John.Opila
Sneaking in some stats for SpawnActor.
Change 3654649 by Ben.Zeigler
Refactor SizeMap and ReferenceViewer into the AssetManagerEditor plugin, and delete the old modules.
Fix SizeMap crash that I temporarily added. TreeMap is initialized weirdly
Change 3648912 by Ben.Zeigler
First half of changes to refactor sizemap/reference viewer into the asset manager editor plugin
Add GetAllContentBrowserCommandExtenders to ContentBrowserModule that allows registering commands/keybinds to extend the content browser via plugins
Add GetSharedMenu/ToolbarExtensibilityManager to AssetEditorToolkit that allows extending the generic asset editor via plugin
Move the code to spawn the Reference Viewer and SizeMap into the AssetManagerEditor plugin so these UIs can be tightly bound and share data. This also enables keybinds for Size Map and Audit.
Remove size map from the save as dialog, it created a special modal size map window that will not work after my refactor
Change 3639419 by Ben.Marsh
Use DirectoryInfo instead of DirectoryReference to enumerate projects. Tracking down UHT compile failures on Mac.
Change 3638619 by David.Nikdel
AsyncLoading: Suggested change by Gil to add lock prior to changing LoadPhase to WaitingForHeader (presumably to make FArchiveAsync2::StartReadingHeader's assumption about locking true)
Change 3633562 by Chris.Babcock
Update Android virtual keyboard support
Change 3630564 by Peter.Sauerbrei
fix for the manifest stage problem
Change 3629577 by Chris.Babcock
Fix merge errors in GameActivity.java
Change 3629154 by David.Nikdel
Disable debug device output in shipping builds (even if logs are enabled)
Change 3626542 by John.Opila
Back out changelist 3603452
Undoing the OpenGL load changes as the initial load time was just too damn high!
Change 3620472 by David.Nikdel
Fix from Nick to fix a BP that crashes on Compile
Change 3618090 by Josh.May
Reset inertial scrolling for SScrollboxes and STableView-based Slate widgets when scrolling to specific scroll offsets.
Change 3613980 by Chris.Babcock
Fix issue with Android password keyboard input
Change 3603825 by John.Opila
Shader change doesn't seem to like standalone PC.
Change 3603452 by John.Opila
Moving openGL shader compilation into loading instead of at the last minute.
Change 3593008 by David.Nikdel
Merging CL 3504471
from //Fortnite/Dev-Cinematics/Engine/...
to //WEX/Main/Engine/...
----------------------------------------
Sequencer: Delay mouse capture until drag for sequencer time slider
- Fixes context menus not opening as a result of mouse capture being taken on mouse down
=================================================================================================
THESE CHANGES TOUCH MULTIPLE PLATFORMS
=================================================================================================
Change 3739931 by Ben.Zeigler
changes to some asset manager code modified on WEX, and fix several FStringAssetReference->FSoftObjectPath
Change 3723451 by Josh.May
Exposed OnBeforePopup to UMG and Blueprint for UWebBrowser. This is triggered by the CEFBrowserHandler when attempting to open hyperlinks targeting _blank and, when not handled, would result in the page never loading.
Added OnBeforePopup handling for the HTMLNewsWidget, ensuring the URLs are opened in an external browser.
Change 3711256 by Dmitriy.Dyomin
Fixed: Friend list invalidation panel relative transform caching issues
Also fixed issues with and set slate.cacherenderdata=0 for better batching
Change 3698695 by Josh.May
Made the UMG default font overridable via config, allowing us to replace it with a game-scope localized Font asset. If there's a better place for this mechanism/accessor to live, please let me know.
Added a new 'Default' font that replicates '/Engine/EngineFonts/Roboto'. This also has a localized Font asset variant for zh-Hans.
Change 3676085 by Josh.May
Implemented MulticastBroadcastReceiver, a BroadcastReceiver capable of "multicasting" intents to other receivers. AppsFlyer defines a similar MultiInstallBroadcastReceiver class specific to the INSTALL_REFERRER intent, but it MUST be the very first one defined (cannot be guaranteed in our build pipeline AFAIK).
Added MulticastBroadcastReceiver (for INSTALL_REFERRER) to the AndroidManifest generation logic, allowing BOTH Adjust and AppsFlyer to receive the intent.
Added dev channel support for AndroidAppsFlyer, enabled conditionally based on shipping/distribution and whether or not a valid AppsFlyerDevChannel name is specified. For WEX, our dev channel is WEX_Dev.
Fixed AppsFlyer_EventAttribute's Java class lookups and constructor signature.
Change 3670860 by Ben.Zeigler
First version of improvements to tools to analyze chunks
Size Map and Reference Viewer now support reading cooked asset data and displaying chunks. Changing the platform dropdown in the Asset Audit window switches the other windows as well
Asset Audit window now has "Add Chunks" button, and selecting AllTypes in the Primary Asset drop down will add all primary assets
Size Map now shows Disk Size by default, and supports a right click context menu
Significant UI improvements to all 3 tools, including keybind support
Split Manage references into Hard and Soft, where Hard are set explicitly and soft are inherited. This allows determining why an asset was included in a chunk/primary asset
When the AssetManager builds management information for the audit browser/cooker, it now precomputes a chunk mapping for relevant assets. PackageChunkType is used to refer to these virtual primary assets
Add callback to content browser delegates to handle adding arbitrary FAssetData to an asset view, used to show chunks
Several changes to the ITreeMap UI used by size map
Change 3670290 by Josh.May
Added AppleAppID configs for AppsFlyer.
Added AdSupport and iAd frameworks for IOSAppsFlyer. According to the AppsFlyer documentation, these are required for IDFA and Apple Search Ads tracking.
Change 3643531 by Peter.Sauerbrei
fix for save game location and certain data backed up to the cloud when it shouldn't
Change 3629303 by Ben.Zeigler
Merge fix for shared ptr corruption in async loading thread from Main, and enable asnyc loading thread for WEX
Copy of CL #3623261 and 3625806
Change 3629219 by Peter.Sauerbrei
Merging using WEX_Main_to_UE4_WEX_Staging
bringing over the files that Stan didn't have access to
Change 3629063 by Stanley.Hayes
Engine Merge: Merging using WEX_Main_to_UE4_WEX_Staging(flipped)
Change 3618988 by Josh.May
Reimplemented DevicePerformanceBucket-based WorldMap class selection to account for the WorldMap actor being pre-serialized into the UMAP.
On a related note, ChildActorComponents marked as "editor only" now mark their spawned Actors as Transient to prevent them from getting serialized at cook-time.
Change 3597981 by Josh.May
Converted WExpCampaignDefinition's RegionDefinition refs back to hard references and, to compensate, converted WExpZoneDefinition's ZoneBoss refs to soft references. This moves the RegionDefinitions and ZoneDefinitions from chunk 2 to chunk 1 without pulling in assets for the ZoneBosses. This also allows us to grab the ZoneBoss refs during UWExpAssetManager::GetMainMenuAssetList.
Reworked UWExpAssetManager::GetMainMenuAssetList and UWExpAssetManager::GetLevelAssetList to build more "complete" asset lists by expanding lists of PrimaryAssetIds.
Tweaked the WorldMap's ZoneBoss spawning to account for the switch to AssetPtrs.
Change 3581214 by Josh.Markiewicz
added cookie deletion for Google on logout
[CL 3750870 by Stanley Hayes in Main branch]
#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]
- New "Size Map" feature that shows the resource size for selected assets in Content Browser
- Select assets in Content Browser, right click and choose "Size Map..." to show sizes for those assets
- Select actors and press Alt+Shift+M to show sizes of assets used by those actors
- Select assets in Reference Viewer, right click and choose "Size Map..." to show sizes for those assets
- Also added a new "Tree Map" general purpose Slate widget (STreeMap)
[CL 2521609 by Mike Fricker in Main branch]