Commit Graph

92 Commits

Author SHA1 Message Date
Nick Darnell
924baec97b Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3341527)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3280282 on 2017/01/31 by Matt.Kuhlenschmidt

	GitHub 3171 : fix 'memoreport -full' causes ensure condition fail on particle object

Change 3281111 on 2017/02/01 by Michael.Dupuis

	#jira UE-36318 : was'nt notifying that we changed the current level in the case where you add/create new level in the Level window

Change 3281225 on 2017/02/01 by Jamie.Dale

	Several improvements to culture switching and LocRes files

	 - LocRes files now de-duplicate translations when they're generated, which can result in smaller LocRes files.
	 - The localization compilation step now produces a LocNat file, which contains meta-data specifying the native culture during compile, and where the native LocRes file can be found.
	 - Changing cultures now loads the native localization data prior to loading the non-native translations to ensure that translations are always applied to a consistent base.
	 - The "leet" culture (available when localization testing is enabled) is now always applied against the native translation, and correctly restores non-translated text when switching away from the "leet" culture.
	 - "-culture=leet" now works correctly on the command line ("-leet" also works).
	 - LoadLocalizationResourcesForCulture is no longer called multiple times during initialization of the text localization manager.
	 - General clean-up of localization code to favor using LocKeyFuncs with maps and sets, rather than rolling their own key funcs.

Change 3281291 on 2017/02/01 by Alexis.Matte

	Make sure the sections material slot assignation is persist correctly for staticmesh and for skeletal mesh
	#jira UE-39639

Change 3281718 on 2017/02/01 by Michael.Dupuis

	#jira UE-34186: invert processing order of special character, to take into account that key name could be considered a special character and would cause the assumption done to no longer be valid

Change 3281861 on 2017/02/01 by Alexis.Matte

	Fix import of morph target when there is no animation
	#jira UE-41383

Change 3282791 on 2017/02/02 by Chris.Wood

	Split crash analytics methods to fix comment parsing issues.
	[UE-32787] - Document Crash Report Client analytics events in code

Change 3283316 on 2017/02/02 by Alexis.Matte

	Make sure we do not import more then the maximum allowed node
	#jira UE-41405

Change 3283349 on 2017/02/02 by Jamie.Dale

	Updated Portal to stage its .locnat files

Change 3283927 on 2017/02/02 by Matt.Kuhlenschmidt

	Fix component/actor selection becoming out of sync after undo/redo

	#jira UE-41416

Change 3284061 on 2017/02/02 by Alexis.Matte

	Fix the scene importer front x axis import
	#jira UE-41318

Change 3284280 on 2017/02/02 by Alex.Delesky

	#jira UE-41060 - Placing blocking volumes in the level via the Content Menu's "Place Actor" command will now place a blocking volume in the level and not generate an empty warning in the output log

Change 3285053 on 2017/02/03 by Michael.Dupuis

	#jira UE-33777: Handle the global landscape editor ui command  list so specified shortcut will be treated

Change 3285444 on 2017/02/03 by Jamie.Dale

	Updated FastDecimalFormat to support the correct 0-9 numerals for the current locale

	These are typically still Latin, but Middle Eastern languages have some variants.

	This addresses an inconsistency between FText formatting of numbers and dates (since numbers always used Latin, but dates used the culture correct numerals).

Change 3287422 on 2017/02/06 by Michael.Dupuis

	#jira UE-36580: Improved the whole word algo to take into consideration localisation

Change 3287455 on 2017/02/06 by Alexis.Matte

	When swaping the mesh point by the mesh component, we noe clean up the override material instead of empty it.
	#jira UE-41397

Change 3287745 on 2017/02/06 by Alexis.Matte

	Merge from orion dev-general cl:3286668
	Fix a crash when importing a LOD containing different material with less sections

Change 3287996 on 2017/02/06 by Michael.Dupuis

	#jira UE-37290: fixed naming to be "move to level" instead of "move level"

Change 3288090 on 2017/02/06 by Jamie.Dale

	Fixing missing include breaking the FText natvis

Change 3288105 on 2017/02/06 by Jamie.Dale

	FTextStringHelper::ReadFromString_ComplexText now only looks at the start of the buffer when matching the complex text macros

Change 3288150 on 2017/02/06 by Jamie.Dale

	Fixing display names for tutorial categories so that they can be localized

	They were already FText, but the config wasn't defining them in a localizable way.

	#jira UE-37926

Change 3288469 on 2017/02/06 by Alex.Delesky

	#jira UE-35464 - Enables the editor to parse SubRip Subtitles files to create subtitle assets.

	This also introduces the Subtitles module.

Change 3288540 on 2017/02/06 by Alex.Delesky

	Backing out changelist 3288469 due to build issue with module includes

	#jira none

Change 3289074 on 2017/02/06 by Alex.Delesky

	Back out changelist 3288540 - reintroducing Subtitles module to parse SubRip Subtitles files

	#jira UE-35464

Change 3289753 on 2017/02/07 by Michael.Dupuis

	#jira UE-34599: Take into consideration UMaterialExpressionMaterialFunctionCall when getting the GUID

Change 3290097 on 2017/02/07 by Nick.Darnell

	Automation - The automation framework no longer buckets errors, warnings and log statements into a seperate set of buckets.  There is now only one log, and all entries go into it to provide some context when things fail.  Continued working on the styling of the reports.

Change 3290182 on 2017/02/07 by Michael.Trepka

	Added missing initialization for SWindow::bIsMirrorWindow

Change 3290472 on 2017/02/07 by Michael.Dupuis

	#jira UE-37358: Add reference list in the dialog for all delete type

Change 3290513 on 2017/02/07 by Michael.Dupuis

	#jira UE-37958: was testing the trailing number 0 twice and never testing the 1

Change 3290543 on 2017/02/07 by Michael.Dupuis

	#jira UE-35931: Refresh detail panel on selection lost

Change 3290581 on 2017/02/07 by Michael.Dupuis

	Fixed possible crash if we have no level blueprint specified (was crashing during the delete of an actor)

Change 3290721 on 2017/02/07 by Michael.Dupuis

	#jira UE-40360: Pass the custom spawning struct which contain the level override into to the spawn function

Change 3291958 on 2017/02/08 by Alexis.Matte

	Back out revision 26 from //UE4/Dev-Editor/Engine/Source/Developer/AssetTools/Private/AssetTools.cpp

Change 3292017 on 2017/02/08 by Alexis.Matte

	Add some fbx automation tests to validate material re-import

Change 3292030 on 2017/02/08 by Michael.Dupuis

	#jira UE-37958: was testing the trailing number 0 twice and never testing the 1

Change 3293062 on 2017/02/08 by Jamie.Dale

	Reduced the number of allocations that happen when rebuilding text

	This change removes the wasteful FTextHistory::ToText function and replaces it with two more specialized functions; FTextHistory::BuildLocalizedDisplayString and FTextHistory::BuildInvariantDisplayString.

	These new functions return an FString (for the display string), rather than an FText (which was simply mined for its display string). Simply avoiding going via an FText saves at least two allocations per-rebuild.

	Changes:
	 - Removed FTextHistory::ToText and replaced it with FTextHistory::BuildLocalizedDisplayString and FTextHistory::BuildInvariantDisplayString.
	 - Moved the localization aware chronological and transformation implementations into FTextChronoFormatter and FTextTransformer. These return an FString which avoids an FText allocation during rebuild, and is simply passed into an FText during normal FText usage.
	 - Moved FText::AsDate, FText::AsDateTime, FText::AsTime, FText::ToUpper, and FText::ToLower into Text.cpp, and these now use FTextChronoFormatter and FTextTransformer from the common text implementation.
	 - Moved FText::AsTimespan into Text.cpp. This had no dependency on ICU, so this is now the common text implementation.
	 - Added FTextFormatter::FormatStr variants. FTextFormatter::Format calls these FTextFormatter::FormatStr versions internally, and they're also used during text rebuilding (saving not only an FText allocation, but also a container copy).
	 - Removed FText::CreateNumericalText and FText::CreateChronologicalText as they were mostly superfluous.
	 - General update from using MakeShareable to MakeShared (saving 1 allocation).
	 - General clean-up of L10N/I18N class friendship.

	#jira UE-41533

Change 3293292 on 2017/02/08 by Alex.Delesky

	Performing some cleanup in the Subtitles module, and creating a SubtitlesEditor module for the subtitles asset factories since it causes issue in client builds.

Change 3293477 on 2017/02/08 by Jamie.Dale

	Fixed TProperty::InitializeValueInternal and TProperty::DestroyValueInternal mismatch when dealing with fixed size arrays

	#jira UE-41007

Change 3293571 on 2017/02/08 by Matt.Kuhlenschmidt

	Fix lots of outline data being added to the font cache due to wrongly hashing outline material and color data.

Change 3293572 on 2017/02/08 by Matt.Kuhlenschmidt

	Fix details panel categories in the static mesh editor

Change 3294216 on 2017/02/09 by Michael.Dupuis

	#jira UE-40609: manually position the window based on it'S max possible size
	#3128 GitHub

Change 3294430 on 2017/02/09 by Jamie.Dale

	Kerning-only text shaping no longer draws characters to get their metrics

	It now goes via the low-level FT caches like HarfBuzz does.

Change 3294588 on 2017/02/09 by Alexis.Matte

	If we remove a LODGroup from baseengine.ini, the fbx importer UI will now be able to recover in case the last fbx import was done with the just removed LODGroup

Change 3294847 on 2017/02/09 by Matt.Kuhlenschmidt

	Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)

Change 3295093 on 2017/02/09 by Arciel.Rekman

	Linux: fix Setup.sh not working in paths with space (UE-41819).

Change 3295205 on 2017/02/09 by Matt.Kuhlenschmidt

	Fix material UV's no longer working om 9 slice elements

Change 3295816 on 2017/02/09 by Arciel.Rekman

	Linux: fix starting programs from a path with space.

Change 3296129 on 2017/02/09 by Arciel.Rekman

	Linux i686: changes necessary to compile BlankProgram.

	- Added new architecture to UBT.
	- Fixed system headers.
	- Added third party libs for i686:
	  - jemalloc
	  - elftoolchain
	  - zlib
	  - SDL2
	  - libc++

Change 3296564 on 2017/02/10 by Jamie.Dale

	Cleaned up PO comment preservation

Change 3296694 on 2017/02/10 by Jamie.Dale

	AllocateNameEntry now takes TCharType* rather than void* and cast

Change 3296744 on 2017/02/10 by Jamie.Dale

	Moved the PO DOM from UnrealEd to Internationalization

Change 3297250 on 2017/02/10 by Jamie.Dale

	Split the PO import/export pipeline out of the commandlet

Change 3297420 on 2017/02/10 by Alexis.Matte

	Add Isolate and highlight feature for the material panel in the staticmesh and the skeletal editor.
	#jira UE-38985

Change 3297594 on 2017/02/10 by Alexis.Matte

	When importing from fbx a static mesh with find material anywhere, the next LODs import by the user will create new material entries instead of using the existing one.

Change 3297752 on 2017/02/10 by Arciel.Rekman

	i686 support: more third party libs.

	- libcurl
	- OpenSSL
	- libpng
	- libvorbis
	- libogg
	- libopus

Change 3297754 on 2017/02/10 by Arciel.Rekman

	i686 support: PhysX

Change 3297922 on 2017/02/10 by Alexis.Matte

	When importing a new LOD to a staticmesh, the data source file is not anymore wipe or change to the last fbx import filename.

Change 3298330 on 2017/02/10 by Arciel.Rekman

	i686: missing libcurl.

Change 3298620 on 2017/02/11 by Jamie.Dale

	FLocTextHelper improvements

	- It can now support non-standard target layouts (where the native and foreign cultures are in different locations - see FLocTextTargetPaths).
	- The XForeignArchive functions are now more strict, and *only* accept foreign cultures (use the XArchive functions instead if you're using both native and foreign cultures as parameters).

Change 3299293 on 2017/02/13 by Matt.Kuhlenschmidt

	PR #3241: UE-41870: Add quotes when passing through the directory path (Contributed by projectgheist)

Change 3299299 on 2017/02/13 by Matt.Kuhlenschmidt

	PR #3224: Git plugin: fix git autodetection and add error message (Contributed by SRombauts)

Change 3299391 on 2017/02/13 by Matt.Kuhlenschmidt

	Fix material instances being marked dirty when opening

	#jira UE-41721, UE-41719

Change 3299441 on 2017/02/13 by Nick.Darnell

	PR #3243: Fix bug that UWidget::GetOwningPlayer doesn't return (Contributed by yeonseok-yi)

Change 3299567 on 2017/02/13 by Nick.Darnell

	Slate - The Checkbox no longer just passes visibility down to the internal widgets it creates, that prevents future changes to effect it if it starts collapsed.

	#jira UE-41904

Change 3299870 on 2017/02/13 by Jamie.Dale

	Added cycle counters for font rendering/shaping

Change 3300116 on 2017/02/13 by Michael.Dupuis

	#jira UE-41866: Update cache when performing an undo

Change 3300178 on 2017/02/13 by Alexis.Matte

	Fix a crash when re-importing a LOD with more sections then the base LOD

Change 3300191 on 2017/02/13 by Alexis.Matte

	Make sure we do not loose castshadow and recomputetangents section flags when we re-import a skeletal mesh.

Change 3300351 on 2017/02/13 by Alexis.Matte

	Remove the clean up of unused material for the staticmesh editor. Unused material can be delete manually in the UI
	#jira UE-39639

Change 3302138 on 2017/02/14 by Nick.Darnell

	Automation - Adding support for -DeveloperReportOutputPath and -DeveloperReportUrl to permit local runs of the automation tool to generate reports on the report server, and launch the browser window to view them.

Change 3302139 on 2017/02/14 by Nick.Darnell

	UMG - Additional fixes to the way we migrate changes from the preview to the serialized version of the widget tree.  This fixes several issues with edit-inline objects on UWidgets.

Change 3302281 on 2017/02/14 by Nick.Darnell

	Slate - Bringing over changes to the invalidation panel from one of the game streams.  This fixes issues with animations in volatile widgets, as well as some issues with cache relative offset, and offers a method for enabling a different caching method to preserve batching through a commandline, but at the cost of not being able to use GPU buffers, possibly a better option on mobile in some cases.

Change 3302415 on 2017/02/14 by Nick.Darnell

	Disabling the open asset editor test.

Change 3302976 on 2017/02/14 by Nick.Darnell

	Automation - Updating one of the tests to open 70 different known asset types, and ensure that they open without dirtying the package.  AutomationTestSettings are now defaultengine, not sure why they setup to be user specific previously.  Most of these settings need to be removed, or split off into the modules that own them, rather than being in Engine.  TODO.

Change 3303724 on 2017/02/15 by Matt.Kuhlenschmidt

	Removed hard coded list of thumbnails, preventing objects with valid thumbnails from showing up.  Thumbnails are now shown by default.  Use meta=(DisplayThumbnail=false) to remove

	#jira UE-41958

Change 3303729 on 2017/02/15 by Matt.Kuhlenschmidt

	PR #3253: UE-34539: (Bugfix) Allow binary files in git stored via git-fat, git-lfs, etc to be diffed (take 2) (Contributed by rpav)

Change 3303733 on 2017/02/15 by Matt.Kuhlenschmidt

	PR #3248: Fix for TAssetSubClassOf properties reset on undo. (Contributed by StefanoProsperi)

Change 3303823 on 2017/02/15 by Nick.Darnell

	Automation - Continued improvements on screenshots.  Added some fixes to turn off the tonemapper when visualizing buffers.  Fixed several screenshots due to this change.  Adding lightboxes to the reports.  Adding some styling to make things sweeter.

Change 3303937 on 2017/02/15 by Matt.Kuhlenschmidt

	Fix build error

Change 3303982 on 2017/02/15 by Nick.Darnell

	Automation - Making the opening of the image no longer threaded, not really helpful for the IO operation and just makes it harder to follow.

Change 3304058 on 2017/02/15 by Matt.Kuhlenschmidt

	Fix build attempt #2 (not reproducible locally)

Change 3304393 on 2017/02/15 by Matt.Barnes

	Submitting test content for UEQATC-3548

Change 3304517 on 2017/02/15 by Nick.Darnell

	Slate - Making some fixes to the automatic disabling of the pixel snapping code with render transforms.  Sometimes it gets confused, we may want to move to a seperate transform stack for layout and render, and make sure the element drawer has access to both.

Change 3304560 on 2017/02/15 by Nick.Darnell

	UMG - SA fix.

Change 3304890 on 2017/02/15 by Matt.Kuhlenschmidt

	PR #3220: UE-41243: Force resolution in standalone if large than primary workin. (Contributed by projectgheist)

Change 3305360 on 2017/02/15 by Arciel.Rekman

	Linux: fix crash on exit (UE-41907).

	- It is not safe to dereference UAnimGraphNode_PoseDriver::StaticClass during the final shutdown sequence since the instance has already been destroyed in StaticExit().

Change 3306023 on 2017/02/16 by Nick.Darnell

	Paper2D - Adding a method to create SlateBrushes from PaperSprites the same way we can for materials and textures in blueprints.

Change 3306030 on 2017/02/16 by Nick.Darnell

	Slate - Making some additional fixes to invalidation panels from a game branch.  Adding a RoundToVector function to FVector2D, fixing the 3 places we defined a RoundToInt (which wasn't a great name since the convention wasn't meant to be used that way).

Change 3306031 on 2017/02/16 by Nick.Darnell

	Slate - Retainer widgets no longer tick using PreTick on SlateApplication, they now paint during their normal paint.

Change 3306046 on 2017/02/16 by Nick.Darnell

	UMG - Adding CanEditChange to WidgetComponent to gray out the CylinderArcAngle property unless you select the right geometry mode.

Change 3308887 on 2017/02/17 by Matt.Kuhlenschmidt

	Fix crash if blurs are rotated

	#jira UE-42037

Change 3309114 on 2017/02/17 by Jamie.Dale

	Unifying non-shaped text to use the same atlas cache as shaped text

Change 3310044 on 2017/02/17 by Matt.Kuhlenschmidt

	Outline color on text elements is now inherited properly

	#jira UE-40691

Change 3310268 on 2017/02/17 by Matt.Kuhlenschmidt

	Guard against rendering MIDs with potentially no parent in slate.

	#jira UE-42047

Change 3311531 on 2017/02/20 by Michael.Dupuis

	#jira UETOOL-1100:
	Add the possibility to have dynamic min/max slider value
	Synchonize all Color vector together when changing the min/max slider value

Change 3311534 on 2017/02/20 by Michael.Dupuis

	incremental build fix

Change 3311535 on 2017/02/20 by Michael.Dupuis

	incremental build fix take 2...

Change 3311743 on 2017/02/20 by Michael.Dupuis

	buildfix lunix incremental

Change 3312496 on 2017/02/20 by Arciel.Rekman

	Linux: fix PhysX crash in i686.

	- Changed layout to one that works.

Change 3313127 on 2017/02/20 by Jamie.Dale

	Fixed crash when performing a non-async cooked package save

	It isn't safe to call TotalSize on the BulkArchive when it's not a FBufferArchive (as used during async save) once the archive has been closed.

Change 3313990 on 2017/02/21 by Nick.Darnell

	Automation - Added a summary area at the top of the report.

Change 3314034 on 2017/02/21 by Jamie.Dale

	Fixed crash when deleting a streamed font

Change 3314942 on 2017/02/21 by Nick.Darnell

	Automation - More templating styling work.

Change 3315080 on 2017/02/21 by Nick.Darnell

	Automation - Providing a way for users to remove explict events from the event log when automated tests run.  Needed for other systems linked into the automation system like google mock.

Change 3315452 on 2017/02/21 by Nick.Darnell

	Json - Adding support for Map and Set properties to the JsonObjectConverter.  Can now save out map and sets.  No support for loading them yet.

Change 3315614 on 2017/02/21 by Nick.Darnell

	Json - Adding support for loading sets and map json data.

Change 3315924 on 2017/02/21 by Arciel.Rekman

	Vulkan: edigrating various Linux fixes by Josh.

	- This is to make Linux Vulkan work in Dev-Editor easier (for the contractor and myself).

	Original descriptions:

	CL 3313445
	- Various Vulkan fixes:
	  - Compiles in Linux
	  - Many cubemap bugs squashed
	  - Changed the scratch reflection cubemap clear to SetRenderTargestsAndClear, instead of SetRenderTarget() / Clear()
	  - Added compute fences

	CL 3314152
	- Fixed compile error on Mac, but I am pretty sure we can just remote VulkanRHI from Mac building entirely, but needs to be tested.

Change 3316741 on 2017/02/22 by Jamie.Dale

	Ensure that enums used by BP nodes have been PostLoaded so they have the correct display names

	#jira UE-42253

Change 3316800 on 2017/02/22 by Matt.Kuhlenschmidt

	Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)

Change 3317058 on 2017/02/22 by Alexis.Matte

	Fix the scene importer to support correctly the obj file format
	#jira UE-35606

Change 3318039 on 2017/02/22 by Arciel.Rekman

	i686 support: added missing libwebsockets.

Change 3318095 on 2017/02/22 by Arciel.Rekman

	i686 support: Oodle.

Change 3319002 on 2017/02/23 by Michael.Dupuis

	#jira UE-41794 : Do not exit the landscape mode when doing undo from the creation of the landscape

Change 3319012 on 2017/02/23 by Alexis.Matte

	PR #3066: Improve asset import by permitted relative paths and easing editing of mapped mount points. (Contributed by paulevans)
	#jira UE-40039

Change 3319035 on 2017/02/23 by Nick.Darnell

	UMG - Adding a note about the font sizes in UE4 in Slate, using 96 dpi.

	#jira UE-42170

Change 3319040 on 2017/02/23 by Matt.Kuhlenschmidt

	PR #3278: Git plugin: fix revision number for blueprint diff menu (Contributed by SRombauts)

	#jira UE-42129

Change 3319072 on 2017/02/23 by Michael.Dupuis

	#jira UETOOL-1101: Add support for DetailGroup reset to default
	Right now it's only enable for the color grading

Change 3319077 on 2017/02/23 by Nick.Darnell

	Automation - Moving away from most of the templating being done in C++.  Moving to dust.js to just do it in the browser window.  The json report file is now the actual source of the information we use to template the resulting report html.  Maaay have to move to doing the templating server side in the future to stream it to the client better, but avoiding that so we don't have to ship a server.  Disabling several places we were taking editor screenshots, none of that code was actually comparing screenshots, it was a hold-over from earlier days.

	PhysX - Fixing a problem with Physx FillInlinePxShapeArray.  Deprecating it, adding FillInlinePxShapeArray_AssumesLocked, and locking places we were assuming it was already locked in the landscape component.

Change 3319088 on 2017/02/23 by Nick.Darnell

	PR #3245: UE-41707: Re-order includes correctly (Contributed by projectgheist)

	#jira UE-41914

Change 3319104 on 2017/02/23 by Michael.Dupuis

	fix incremental build

Change 3319146 on 2017/02/23 by Matt.Kuhlenschmidt

	PR #3292: Git plugin: fix update status on directories broken since UE4.12 (Contributed by SRombauts)

	#jira UE-42272

Change 3319252 on 2017/02/23 by Michael.Dupuis

	fix warning with missing #undef LOCTEXT_NAMESPACE

Change 3319298 on 2017/02/23 by Alex.Delesky

	Removing the Subtitles and SubtitlesEditor modules (it'll eventually be brought back as the Overlay and OverlayEditor modules)

Change 3319388 on 2017/02/23 by Alexis.Matte

	Fbx Importer now find collision model under fbx LOD Group
	#jira UE-42141

Change 3319528 on 2017/02/23 by Michael.Dupuis

	Fixed Undo/Redo to be consistent with other vector modifcation behavior

Change 3319583 on 2017/02/23 by Alexis.Matte

	Fix the sample rate to use the least common multiplier of all keys
	#jira UE-42012

Change 3319705 on 2017/02/23 by Nick.Darnell

	Static Analysis - Fixing sonobjectconverter.cpp(460) : warning C6011: Dereferencing NULL pointer 'ArrayProperty'.

Change 3319711 on 2017/02/23 by Nick.Darnell

	Editor - Adding some checks to make sure the struct we're accessing is still a valid handle.

	#jira UE-42262

Change 3319736 on 2017/02/23 by Alex.Delesky

	Adding Subtitles and SubtitlesEditor to the JunkManifest file.

Change 3319919 on 2017/02/23 by Nick.Darnell

	Automation - Fixing an issue with moving a location that doesn't exist.

Change 3319932 on 2017/02/23 by Alexis.Matte

	Fbx importer, do not apply more then one time the transform option to the scene node.
	#jira UE-42277

Change 3320105 on 2017/02/23 by Nick.Darnell

	Editor - Adding some additional checks to the margin customization.

	#jira UE-42262

Change 3321577 on 2017/02/24 by Jamie.Dale

	Moving Internationalization module from Runtime to Developer

Change 3321625 on 2017/02/24 by Jamie.Dale

	Moving InternationalizationSettings module from Developer to Editor

Change 3321642 on 2017/02/24 by Jamie.Dale

	Moving SCulturePicker from the Localization module to the InternationalizationSettings module

Change 3321734 on 2017/02/24 by Alexis.Matte

	PR #2979: Fix extra root bone for Blender exported FBX. (Contributed by manmohanbishnoi)
	We fix the extra root only when the file creator is from blender and the root node is named armature. We cannot simply remove all dummy node, since this is use by the rigid mesh workflow.

	#jira UE-39050

Change 3321912 on 2017/02/24 by Jamie.Dale

	Split LocalizationCommandletExecution out of the Localization module to remove some editor dependencies

Change 3322274 on 2017/02/24 by Jamie.Dale

	Moving Localization module from Editor to Developer, and merging the Internationalization module into it

	Removed hard-dependency between Engine and Localization/Internationalization via an interface.

Change 3322774 on 2017/02/25 by Jamie.Dale

	Unifying LocRes and LocNat file format between generation and loading

	This lets the code in Core be shared by Localization, and allows some code that was proxying via archives (due to the code being logically identical, but different C++ types) to use these new types directly.

	#tests Built Debug, Shipping, and Editor. Verified that LocNat and LocRes generation and loading worked as before.

Change 3322795 on 2017/02/25 by Jamie.Dale

	Fixing mismatch between SOURCE_CONTROL_WITH_SLATE and its .Build.cs file

	The define was set to disable Slate for Linux program targets only, but the .Build.cs disabled Slate for all Linux targets.

	Since the define was touched most recently (CL# 2534983), I updated the .Build.cs file to match its logic, and moved the definition of the define to the .Build.cs file so that they stay in sync with one another.

Change 3322853 on 2017/02/25 by Jamie.Dale

	Moved the conflict and word count reporting to FLocTextHelper

Change 3323089 on 2017/02/26 by Jamie.Dale

	Added functions to get the target name and path from FLocTextHelper

Change 3323391 on 2017/02/27 by Ben.Cosh

	This fixes an issue with blueprint config variables having their value destroyed by CDO serialization
	#Jira UE-40586 Blueprint variable defaults set from config files value are overwritten by CDO serialization
	#Proj Engine, CoreUObject

Change 3323406 on 2017/02/27 by Ben.Cosh

	Fixed a problem that caused UK2Node::ExpandSplitPin to destroy pins it didn't own in when expanding a collapsed graph during compilation.
	#jira UE-41211 - Crash when splitting a UDS pin on a collapsed graph
	#Proj BlueprintGraph

Change 3323572 on 2017/02/27 by Nick.Darnell

	Automation - Continued itteration on the style of the automation reports, now with attentional info, like where the log came from.

	Automation - Fixing a bug in the functional actor tests, navigating to the actors sometimes opened other objects in the package, now it only opens the map.  Also improved the way we focus the actor so that the level editor is also brought to the foreground.

	Automation - Fixing a bug in how the automation system was registering for capturing logging.  It was swapping out GWarn for its own version, but GWarn isn't called for anything that isn't an error or warning, meaning that none of the Display/Logging or analytics capture attempts were actually working.  Suddenly a flood of informations started being captured during tests.  For now - only going to capture 'Display' logs instead of 'Log' level.

	Automation - Successful comparisons now print more information so that the automation logs do a better job of tracking the flow of the test.

	Automation - The screenshot comparison test now prints more information even during successful comparisons.

	Editor - The message log no longer emits a SetSelection, just because the selection is updated the categoriry view model.  This was causing things like the automation tool, which sets the selection every time (which may itself be an issue) to completely rebuild the message log every time a new automation message was emited.  The message log now checks if the selection would actually change the viewstate before it does it.

	Domino Test - Adding an arrow to visualize the state of the up vector the test is looking for; playing with idea for test visualizers that may help with debugging in the future.

Change 3323580 on 2017/02/27 by Michael.Trepka

	Fixed some Xcode 8.3 compile errors

Change 3323634 on 2017/02/27 by Nick.Darnell

	Build - Fix incremental build.

Change 3323740 on 2017/02/27 by Jamie.Dale

	Adding #error if the SOURCE_CONTROL_WITH_SLATE define is missing

Change 3323865 on 2017/02/27 by Nick.Darnell

	Automation - Disabling the screenshot from the small editor icons test, until the editor screenshot method starts comparing things, and the screenshots we take are better / more scoped.

Change 3324228 on 2017/02/27 by Jamie.Dale

	Can no longer name assets or folders with a leading underscore

	#jira UE-40541

Change 3324429 on 2017/02/27 by Jamie.Dale

	Removing FLocTextTargetPaths

	It was added to support something that I'm now going to do a different way.

Change 3324473 on 2017/02/27 by Jamie.Dale

	Moved the GatherText SCC utils into the Localization module

Change 3324481 on 2017/02/27 by Jamie.Dale

	Moving the localized asset utils out of GatherText base

Change 3324485 on 2017/02/27 by Jamie.Dale

	Cleaning up some includes now that the localization SCC is no longer in GatherText

Change 3324910 on 2017/02/28 by Nick.Darnell

	Slate - Moving the SlateRotatedRect into its own file, and removing FSlateRotatedClipRectType, since there's no longer a difference and we only use FSlateRotatedRect.

Change 3325329 on 2017/02/28 by Michael.Dupuis

	#jira UE-42083: Removed various Modify(true) that would force user to save the levels even if they did'nt really modified them
	Replace TMap<TLazyObjectPtr,...> as it would dirty the level at every Find performed

Change 3325410 on 2017/02/28 by Michael.Dupuis

	missing include for incremental build

Change 3325415 on 2017/02/28 by Nick.Darnell

	UMG - Adding some setters and getters for RedrawTime to the WidgetComponent.

Change 3325418 on 2017/02/28 by Nick.Darnell

	Automation  - Fixing the warnings on startup about smoke tests taking longer than 2s.  Had to add an option to disable capturing the callstack when running smokes, it adds a bit too much overhead during startup.

Change 3325698 on 2017/02/28 by Alexis.Matte

	Put back the code to isolate material versus section in the skeletal mesh. The code was override by a temporary hack done in paragon branch

Change 3325790 on 2017/02/28 by Michael.Trepka

	Copy of CL 3319588

	Fixed address sanitizer support in MacToolChain (Apple changed the name of the env variable Xcode uses to enable it) and added support for thread sanitizer

Change 3326118 on 2017/02/28 by Alexis.Matte

	Add LOD settings LOD distances to fbx import dialog option. The option are not supported yet by the scene importer
	#jira UE-41291

Change 3326183 on 2017/02/28 by Alexis.Matte

	PR #3298: Import SpecularFactor for Roughness and Shininess for Metallic textures (Contributed by VladimirPobedinskiy)

	#jira UE-42301

Change 3326196 on 2017/02/28 by Jamie.Dale

	Force the correct package localization ID when duplicating a BP for nativization

Change 3327037 on 2017/03/01 by Michael.Dupuis

	fixed fortnite mac non editor build

Change 3327483 on 2017/03/01 by Jamie.Dale

	Renaming LocNat to LocMeta

Change 3327486 on 2017/03/01 by Jamie.Dale

	Renaming LocNat to LocMeta

Change 3327541 on 2017/03/01 by Michael.Trepka

	Removed Mac OpenGL RHI files and disabled building of OpenGL RHI on Mac

Change 3328000 on 2017/03/01 by Nick.Darnell

	Automation - Noisy rendering features are now disabled by default when taking screenshots.

Change 3328323 on 2017/03/01 by Michael.Trepka

	Copy of CL 3307526

	Fixed mouse position issues in fullscreen mode on Mac

Change 3328410 on 2017/03/01 by Alexis.Matte

	Remove unwanted option when importing skeletal mesh
	Make the FBX tests uptodate with the new ImportUI options

	#jira UE-41291

Change 3329586 on 2017/03/02 by Jamie.Dale

	Adding missing includes when running with bUseMallocProfiler enabled

Change 3329999 on 2017/03/02 by Nick.Darnell

	UMG - Removing a deprecated 4.8 function to get the label on UWidget.

Change 3330004 on 2017/03/02 by Nick.Darnell

	UMG - Adding TargetPlatform to the dependencies of UMGEditor module.

Change 3330021 on 2017/03/02 by Nick.Darnell

	UMG - Adding TargetPlatform to the private include path of the UMG module.

Change 3330041 on 2017/03/02 by Nick.Darnell

	Engine - Adding a comment to the PreLoadMap call so people know what the string being passed in is.

Change 3330048 on 2017/03/02 by Nick.Darnell

	Editor - Don't allow querying the cursor in the editor viewport while saving packages.  Depending upon the code that gets triggered, it may cause packages to load, or things to be initialized while saving is occuring.

Change 3330602 on 2017/03/02 by mason.seay

	Map for Functional Screenshot Test Bug

Change 3330632 on 2017/03/02 by Alexis.Matte

	Fix fbx crash when there is only one UVChannel but using the naming convention to place it further then the first index

Change 3330862 on 2017/03/02 by Jamie.Dale

	Adding FPaths::SetExtension

	This is like FPaths::ChangeExtension, but also applies the extension if the file doesn't have one.

Change 3331491 on 2017/03/03 by Nick.Darnell

	Automation - Fixing a threading issue in the SAsyncImage, it was accessing potentially bogus memory if the Widget had been deleted before the task ran.

Change 3331498 on 2017/03/03 by Nick.Darnell

	Build - Fixing a build warning.

Change 3331807 on 2017/03/03 by Nick.Darnell

	Automation - Making the Disable Noisy Rendering Features more robust, disabling a few more markers.  Adding a better way of rolling back the changes.

Change 3331999 on 2017/03/03 by Michael.Trepka

	Fixed a memory leak on texture creation with BulkData in OpenGLTexture.cpp

Change 3332481 on 2017/03/03 by Arciel.Rekman

	Fix building lighting in commandlet (UE-42551).

	- Process task graph while running as commandlet.
	- Also, if for any reason - like the lack of -messaging - local swarm interface fails to initialize or takes too much time to send the message, bail out.

Change 3332606 on 2017/03/04 by Jamie.Dale

	Fixing crash reporting loc word counts when the report is starting empty

Change 3332614 on 2017/03/04 by Jamie.Dale

	Fixed text namespaces being treated as case-insensitive when export to JSON manifests and archives

Change 3332619 on 2017/03/04 by Jamie.Dale

	Fixing CIS error

Change 3333000 on 2017/03/06 by Matt.Kuhlenschmidt

	PR #3295: Non-editable FStringAssetReference using VisibleAnywhere (Contributed by projectgheist)

	#jira UE-42284

Change 3333039 on 2017/03/06 by Alexis.Matte

	Make custom ui for FbxSceneImportData object
	#jira UE-37896

Change 3333047 on 2017/03/06 by Nick.Darnell

	UMG - Removing an extra assignment in WidgetSwitcher.

Change 3333056 on 2017/03/06 by Alexis.Matte

	Build fix

Change 3333073 on 2017/03/06 by Matt.Kuhlenschmidt

	Added more logging for when window creation fails due to too many windows.

	#jira UE-42478

Change 3333081 on 2017/03/06 by Matt.Kuhlenschmidt

	PR #3327: Git Plugin: fix RunDumpToFile() to check git ReturnCode (Contributed by SRombauts)

	#jira UE-42535

Change 3333103 on 2017/03/06 by Matt.Kuhlenschmidt

	PR #3336: UE-42407: using GetWindowMode instead of switching on IsFullscreenViewport (Contributed by stefanzimecki)

	#jira UE-42407, UE-42565

Change 3333142 on 2017/03/06 by Jamie.Dale

	Added a way to view/copy a list references (including those that aren't loaded) to the reference viewer

Change 3333443 on 2017/03/06 by Matt.Kuhlenschmidt

	Eliminate the usage of SWebBrowser to show viewport controls in level viewports. There is an non-trivial startup cost initializing CEF and is not worth paying that cost on editor startup for one tiny control.  The button now opens a web page on click.

	#jira UE-42461
	PR #3314: Drop UE4Editor -> CEF dependency to 2x speedup Linux UE4Editor startup (Contributed by slonopotamus)

Change 3333914 on 2017/03/06 by Matt.Kuhlenschmidt

	Remove double middle mouse click to change to perspective view

	#jira UE-42444

Change 3333936 on 2017/03/06 by Matt.Kuhlenschmidt

	Fixed excessive fname initialization in these files

Change 3334063 on 2017/03/06 by Alexis.Matte

	fix build linux

Change 3334166 on 2017/03/06 by Jamie.Dale

	Adding Data Table export/import support for TMap and TSet

	#jira UE-42415

Change 3334459 on 2017/03/06 by Alexis.Matte

	PR #3334: Respect bForceFrontXAxis option when exporting to FBX (Contributed by rajkosto)

	#jira UE-42563

Change 3335132 on 2017/03/07 by Jamie.Dale

	Fixing typo

Change 3335140 on 2017/03/07 by Jamie.Dale

	Fixing CSV import warnings in GameplayEffects test

Change 3335164 on 2017/03/07 by Alexis.Matte

	Avoid selecting skeletal mesh section in the level when high light them in persona editor
	#jira UE-20151

Change 3335186 on 2017/03/07 by Jamie.Dale

	Fixed CSV parser missing empty cells at the end of the string

Change 3335218 on 2017/03/07 by Arciel.Rekman

	SDL2: delete unused project/build files.

Change 3335222 on 2017/03/07 by Arciel.Rekman

	SDL2: delete more unused project/build files.

Change 3335230 on 2017/03/07 by Matt.Kuhlenschmidt

	Additional fixes for blur and blur slot not propagating padding to each other

	#jira UE-42553

Change 3335896 on 2017/03/07 by Jamie.Dale

	ToolTips and Engine were double gathering the same meta-data

	#jira UE-36480

Change 3336009 on 2017/03/07 by Matt.Kuhlenschmidt

	Fix details panels becoming unusable if "Show only Modified Properties" is enabled and there are no modified properties

Change 3336247 on 2017/03/07 by Jamie.Dale

	Selection height is now the max of the line height and text height to account for negative line scaling

	#jira UE-40673

Change 3336253 on 2017/03/07 by Jamie.Dale

	Added a setting to control whether we should use the font metrics or the bounding box when laying out a font

	#jira UE-41074

Change 3336303 on 2017/03/07 by Arciel.Rekman

	Refactor of OS memory allocation functions.

	- Bring PageSize/OSAllocationGranularity in line with the established definitions.
	  - PageSize is a hardware mapping granularity that is also used for PageProtect() and any other functions that involve setting virtual memory properties.
	  - OSAllocationGranularity is a virtual address allocation granularity that on some platforms may be applied on top of that (notably VirtualAlloc in Windows only returns addresses that are 16 page aligned).
	  - BinnedPageSize and BinnedAllocationGranularity are the values expected by Binned and Binned2 for size and the alignment of OS allocations.

	- Disable the logic in CachedOSPageAllocator that allowed buffers larger than the requested size to be returned.
	   - This caused wrong allocation size to be passed in BinnedFreeToOS() from Binned2.

	- Make Binned2 work on Linux
	    - Addresses returned from BinnedAllocFromOS() need to be BinnedPageSize (minimum 64KB) aligned for Binned2 to work. This results in the need to artificially align mmap()'d addresses, at some performance cost.
	    - The same function can be used on other systems with mmap()/munmap() (Mac, Android, iOS)

	- Switch Linux to Binned2 by default.

	- Add ability to sanity-check OS memory allocations.
	   - Debug and Development build will store a descriptor to check that values passed to BinnedFreeToOS() are the same (mmap-based allocation only).

Change 3337098 on 2017/03/08 by Michael.Dupuis

	#jira UE-42589: Added a guard if the mesh component is not attached, this can happen when moving a component out of the screen

Change 3337183 on 2017/03/08 by Matt.Kuhlenschmidt

	Hide the preview toolbar button, it is not being used

Change 3337801 on 2017/03/08 by Michael.Trepka

	Fixed some module dependencies to make sure we don't build OpenGLDrv on Mac

Change 3338373 on 2017/03/08 by Joe.Graf

	Fixed external plugin cooking and deployment by remapping plugin directories upon cook & deployment
	Tested directory structures:
	    D:\SomePluginDir
	    D:\UE4\AnotherPluginDir
	    D:\UE4\Engine\Plugins
	    D:\UE4\MyProject\Plugins

Change 3338482 on 2017/03/08 by Alexis.Matte

	Remove "BlueprinReadOnly" flag on "WITH_EDITORONLY_DATA" class variable

Change 3338679 on 2017/03/08 by Matt.Kuhlenschmidt

	Fixed arrow keys not working to navigate between elements in the details panel

Change 3339086 on 2017/03/09 by Dmitriy.Dyomin

	Added: Mobile friendly slate settings

Change 3339366 on 2017/03/09 by Nick.Darnell

	Build - Attempting to fix build.

	#jira UE-42675

Change 3339506 on 2017/03/09 by Jamie.Dale

	Fixing Linux Server build error

	#jira UE-42675

Change 3340450 on 2017/03/09 by Cody.Albert

	Ensure that the hittest grid is valid before trying to find a focusable widget

Change 3340492 on 2017/03/09 by Arciel.Rekman

	Fix IOS compile error (UE-42695).

Change 3340565 on 2017/03/09 by Arciel.Rekman

	Fix another compile error (UE-42695).

Change 3341527 on 2017/03/10 by Alexis.Matte

	Fix crash when dragging a re-import scene and there is new asset created
	#jira UE-42766

[CL 3341914 by Nick Darnell in Main branch]
2017-03-10 15:37:02 -05:00
Ben Marsh
111ec7adc5 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3314870)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3284872 on 2017/02/03 by Graeme.Thornton

	Seperate pak cache granularity from pak signing chunk size

Change 3285765 on 2017/02/03 by Graeme.Thornton

	Fix stats warnings because each slate new loading screen thread has the same stat name, but is assigned to a different thread

	#jira UE-41478

Change 3286913 on 2017/02/04 by Ben.Marsh

	IncludeTool: Merging fixes.

	* Don't remove existing forward declarations unless explicitly instructed to do so. Files are optimized with these declarations in place, so removing them can cause output files to fail to build. It can be a useful separate step though, so expose it as a command-line option instead.
	* Add a specific option for which files should be output by the tool. Any files which are excluded from this list are treated specially when generating output files, so as to prevent them from causing files to be omitted from other files that include them. Also add an option to force this mode for all headers, for use when testing formatting/include path generation.

Change 3287100 on 2017/02/05 by Ben.Marsh

	UBT: Move platform settings into platform-specific TargetRules objects.

Change 3287106 on 2017/02/05 by Ben.Marsh

	Merge UEBuildPlatformContext into UEBuildPlatform. Now that targets can have platform-specific settings, there is no need to separate a platform class which contains target-specific information.

Change 3287398 on 2017/02/06 by Steve.Robb

	Fix for UHT failing when -WarningsAsErrors and -Verbose are specified together.

Change 3287399 on 2017/02/06 by Steve.Robb

	Log verbosities made more readable in the debugger.

Change 3287410 on 2017/02/06 by Steve.Robb

	Fix for TStructOpsTypeTraits where WithCopy gives a different result between specializing the traits and not providing WithCopy and not specializing the traits at all.

	#fyi marc.audy

Change 3288020 on 2017/02/06 by Ben.Marsh

	Prevent forward declaration of the ITextData class. We need to include the header for the debugger visualizers to work correctly.

Change 3291817 on 2017/02/08 by Steve.Robb

	New EBlueprintCompileReinstancerFlags used to construct FBlueprintCompileReinstancer, instead of lots of bools.

Change 3292090 on 2017/02/08 by Graeme.Thornton

	Crash fix - don't update font engine services if it was never created

	#jira UE-33953

Change 3292993 on 2017/02/08 by Ben.Marsh

	Add an option to disable force-including PCHs for files in the non-unity working set. (bAdaptiveUnityDisablesPCH)

Change 3293231 on 2017/02/08 by Ben.Marsh

	BuildGraph: Allow overriding the changelist that a badge should be displayed for (with the Change="" attribute on the Badge declaration in XML), so the code changelist can be used if necessary. Also link to the failed step if only one has failed.

Change 3294213 on 2017/02/09 by Ben.Marsh

	EC: Allow setting a property on frequent CI jobs that allows us to exclude it from job searches for generating the dashboard. Filtering on the client side is causing dashboard pages to be almost empty.

Change 3294753 on 2017/02/09 by Ben.Zeigler

	#jira UE-41151 Fix UObjectLibrary::RemoveObject to remove from the correct array, and add comment mentioning that the dynamic use of Object Library is semi-deprecated

Change 3296070 on 2017/02/09 by Ben.Zeigler

	Explicitly turn off Copy for a struct that has a linked list internally. I think turning Copy on by default for all non POD Types is pretty risky and is likely to crash for other games. In this case it was being copied for network replication, and it didn't have one defined so the default C++ one copied the linked list and crashed on destruction.

Change 3296420 on 2017/02/10 by Graeme.Thornton

	Remove remaining references to AES_KEY, instead using the encryption key delegates to access the key where needed
	Refactored encryption and signing key access in unrealpak to make it easier to use

Change 3296609 on 2017/02/10 by Ben.Marsh

	BuildGraph: Fix error running the <Copy> task with an empty "From" argument.

	* FileSystemReference.IsUnderDirectory() was not correctly handling cases where the directory was a root directory (and has to end in a path separator)
	* FilePattern.AsDirectoryReference() with an empty token would append a path separator to an empty string, resulting in it referencing the root directory rather than the given base directory.

Change 3297440 on 2017/02/10 by Ben.Marsh

	UBT: Move the FileFilter class into UnrealBuildTool.

Change 3297725 on 2017/02/10 by Ben.Zeigler

	#jira UE-39199 Fix issue with enum value redirects using the wrong short or long name, it now fully supports both.
	Clean up a lot of confusingly named and broken functions on UEnum:
	#jira UE-41348 Deprecate FindEnumIndex, GetEnum, GetEnumName, replace with GetIndexByName, GetNameByIndex, and GetNameStringByIndex and clean up warnings
	#jira UE-38187 Deprecate GetDisplayNameText and GetEnumText, replaced both with GetDisplayNameTextAtIndex which is now callable outside the editor and has a better comment
	Deprecate FindEnumRedirects and replace with GetIndexByNameString. Fix code to not check the redirects array 5 times per enum lookup
	Fix GetValueAsString to actually act on a value, not an index. This matches common usage and the function's name
	While fixing deprecation warnings on internal games, fixed dozens of cases where it was using Index functions when it should have been using Value functions
	Delete some now redundant enum editor code and pipe everything through UEnum

Change 3297979 on 2017/02/10 by Ben.Zeigler

	Fix issues parsing Enums that are literally the string "None", which is allowed but leads to some odd behavior

Change 3298299 on 2017/02/10 by Steve.Robb

	TTuple improvements:
	- equality comparable
	- serializable
	- in the correct folder

	2-tuples are specialized to be syntactically compatible with both TPair and TTuple.
	TPair is now an alias for a 2-tuple and is no longer bound to TPairInitializer.

	#fyi robert.manuszewski,ben.marsh

Change 3298460 on 2017/02/11 by Ben.Marsh

	UGS: Set the correct result from running custom tasks.

Change 3298462 on 2017/02/11 by Ben.Marsh

	UBT: Fix some deprecated messages that have the wrong release version, and add a better message for how ModuleRules constructors need to be updated.

Change 3299447 on 2017/02/13 by Graeme.Thornton

	Fix AES and pak signing key embedding for content only projects
	 - Force temp target when any keys are specified by project config

Change 3299649 on 2017/02/13 by Steve.Robb

	PLATFORM_HAS_DEFAULTED_OPERATORS fixed.
	Other obsolete compiler switches removed.

Change 3299787 on 2017/02/13 by Steve.Robb

	IsAbstract() for testing if a reflected native type contains pure virtual functions.  Needed for BP nativization.

	#fyi robert.manuszewski

Change 3300576 on 2017/02/13 by Ben.Marsh

	EC: Add support for starting builds on any agent type. Mapping from agent types to resource pools is stored in an EC property sheet (/Generated/<Stream>/AgentTypes), allowing EC procedures to map it to a resource pool from a parameter.

Change 3300600 on 2017/02/13 by Ben.Marsh

	EC: Add the -ClearHistory argument to UAT run to export BuildGraph settings, to allow running on incremental workspaces.

Change 3300624 on 2017/02/13 by Ben.Marsh

	Switch incremental builds for all streams to start up on the incremental agent.

Change 3302134 on 2017/02/14 by Steve.Robb

	UnrealCodeAnalyzer removed.

	#fyi ben.marsh,robert.manuszewski

Change 3302639 on 2017/02/14 by Ben.Zeigler

	Fix crash cooking odin with default command line
	#jira UE-41952 Delete StealthTeleport map that crashes on load, and update default cook list that gets used if nothing specified

Change 3303002 on 2017/02/14 by Ben.Zeigler

	#jira UE-41061 Fix it so editor only filtering on savepackage is uniformly applied regardless of if it's at package or object level
	#jira UE-41880 Rewrite editor/client/server only filtering logic in SavePackage to fix various bugs. It now does all of the filtering up front, and won't process any filtered objects for imports or exports
	Rename NotForEditorGame to NotAlwaysLoadedForEditorGame and improve comments, this flag says that the asset should be loaded EVEN IF it is editor only, it does not affect loading for normal objects
	Change the non-map cook flags to RF_Public instead of RF_Standalone. Blueprint classes aren't RF_Standalone so were only being cooked before due to an accident of the dependency checker
	Change it so anything with a Transient outer is marked transient at save time. These objects would not save out properly anyway
	Fix it so -cooksinglepackage works properly again and excludes localization and startup packages
	Tested with Fortnite and Odin, Odin works but with lots of warnings with nativization on which I need to investigate

Change 3303084 on 2017/02/14 by Ben.Zeigler

	Attempt to get Nativization and EDL working without warnings

	Change 3305153 on 2017/02/15 by Ben.Zeigler

	Fix Fortnite and Orion cook, I don't understand why this passed my local testing
	Fix the CDO subobject finder to actually return things instead of doing nothing, and fix a shadow variable warning

Change 3305959 on 2017/02/16 by Gil.Gribb

	UE4 - Tweaked out the EDL loader for the switch with benefits to all platforms.

Change 3306159 on 2017/02/16 by Ben.Marsh

	Fix path to target binaries when building non-monolithic in a unique build environment.

Change 3306584 on 2017/02/16 by Steve.Robb

	UEnum internal functions renamed from Index to Value.
	GetValueAsString_Internal() parameter now takes an int64, as is expected for enum values.

	#fyi ben.zeigler

Change 3307836 on 2017/02/16 by Ben.Zeigler

	#jira UE-42055 Load very old redirects in cooked builds. Matinee has no way of resaving redirects, so as long as matinee exists we need to keep them around forever, or fix matinee manually
	Fixes lighting in Infiltrator demo

Change 3307929 on 2017/02/16 by Ben.Zeigler

	#jira UE-42055 Second half of matinee redirector fix

Change 3308840 on 2017/02/17 by Matthew.Griffin

	Reimplementing CL#3305808 from 4.15

		Changed QA label build process so that it only allows version with 3 components (we always add the .0 for initial releases)

Change 3309115 on 2017/02/17 by Ben.Marsh

	Windows: Fix the GetModulesDirectory() function always returning the engine binaries directory. It's possible to build non-monolithic targets which output all engine binaries to the game binaries directory - a requirement to being able to set game-specific defines or build settings, because we don't want shared engine binaries to be tainted with them. The module manager needs to be able to operate early on,  before many of the game settings have been initialized, so just return the directory containing the Core module instead.

Change 3309120 on 2017/02/17 by Ben.Marsh

	Fix support for creating modular builds which don't use the shared build environment.

Change 3309125 on 2017/02/17 by Ben.Marsh

	Require that -CookDir arguments are specified separately on the command line. '+' is a valid path character (and common in build versions), so we shouldn't treat it as an argument separator.

Change 3309128 on 2017/02/17 by Ben.Marsh

	Fix UnrealPak failures when enumerating all files from a source directory, if that directory happens to contain spaces.

Change 3309131 on 2017/02/17 by Ben.Marsh

	Fix list of discovered assets being cleared by second call to FindFilesRecursive() when building DDC. Disable the -cookdir parameter again.

Change 3309140 on 2017/02/17 by Ben.Marsh

	UAT: Fix exception moving a file from one location to another if the target directory does not exist.

Change 3309212 on 2017/02/17 by Ben.Marsh

	Fixes/improvements for mod editor and code mods:

	* A separate top-level project is generated for each code mod in the Visual Studio solution.
	* Plugin descriptors now have a flag to identify themselves as mod as opposed to a regular game plugin, which prevents project plugins from getting their own VS project. New mods created with the mod editor will have this set by default, as do the three existing sample mods.
	* Cleaning and building code mods will never modify engine binaries. Presence of the Engine/Build/InstalledProjectBuild.txt file is used to indicate running in this environment. This flag also disables options to edit metadata for non-mod plugins in installed builds.
	* Plugin browser now includes a separate category for mods.
	* Mod editor now behaves as an "installed" program by default, and will use the user's home folder for storing settings.

Change 3309231 on 2017/02/17 by Steve.Robb

	Fix for Ar << bSomeBool where Ar is a derived class which overrides an operator<<.

	#jira UE-42052

Change 3309248 on 2017/02/17 by Ben.Marsh

	Add support for hot-reloading game plugin modules from Visual Studio, as long as their module returns IsGameModule() = true.

Change 3309257 on 2017/02/17 by Ben.Marsh

	Prevent game binaries from being renamed for hot reload when working with installed projects.

Change 3309355 on 2017/02/17 by Steven.Hutton

	Changes to make the website compatible with the new database changes.

Change 3309371 on 2017/02/17 by Ben.Marsh

	Fix exception on shutdown when running asset registry with threads disabled.

	#jira UE-41951

Change 3309389 on 2017/02/17 by Ben.Zeigler

	#jira UE-42051 Fix ensure and crash when loading a null asset ID via the LoadAsset BP node

Change 3309570 on 2017/02/17 by Gil.Gribb

	UE4 - Switch load time performace tweaks, plus abstracted the IO tracker and handle manager for other platforms and applied it to the PS4.

Change 3310039 on 2017/02/17 by Ben.Marsh

	BuildGraph: Prevent exception when trying to delete a file that does not exist.

Change 3311484 on 2017/02/20 by Chris.Wood

	CrashReportProcess crash add retry logic improvements (CRP v1.2.16)

Change 3311600 on 2017/02/20 by Matthew.Griffin

	Updated StripSymbols functions so that all platforms can deal with the source and target file being the same

Change 3311675 on 2017/02/20 by Steve.Robb

	FNativeClassHeaderGenerator::CurrentSourceFile stack replaced with C++ stack.

Change 3311893 on 2017/02/20 by Ben.Marsh

	UGS: Add support for notifying users if CIS steps fail for content changes. Badges which test content should be listed in the [Notifications] section of the project-specific INI file, through +ContentBadges= lines.

Change 3313966 on 2017/02/21 by Ben.Marsh

	Fix EC parsing of error messages output by the editor in the form "LogXYZ:Error:". Greedy optional subexpression in regex was matching everything until a space, so terminate a colon too.

Change 3314398 on 2017/02/21 by Ben.Zeigler

	#jira UE-42212 Fix shutdown of AnimGraph module to be safer

[CL 3315211 by Ben Marsh in Main branch]
2017-02-21 15:51:42 -05:00
Ben Marsh
5275490168 Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3277940)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3233612 on 2016/12/13 by Ben.Marsh

	UGS: Fix cases where precompiled binaries are submitted for a content change.

Change 3235584 on 2016/12/14 by Ben.Marsh

	UBT: Deprecate the overridable TargetRules.ShouldUseSharedBuildEnvironment() function; targets should specify which build environment to use by setting the BuildEnvironment field in their constructor instead.

Change 3235741 on 2016/12/14 by Ben.Marsh

	UBT: Deprecate the SetupBinaries() callback on the TargetRules class. Instead of overriding this, targets may override their launch module through the "LaunchModuleName" property in their constructor, and add extra modules to the "ExtraModuleNames" field on the TargetRules object itself.

Change 3238176 on 2016/12/16 by Ben.Marsh

	UBT: New XML config file parser. Now reads once at startup and can be applied to instanced objects rather than global fields, and caches parsed output in a binary form for quicker initialization on subsequent runs.

Change 3238249 on 2016/12/16 by Ben.Marsh

	UBT: Add attribute-driven command line parser.

Change 3238462 on 2016/12/16 by Ben.Marsh

	UBT: Include the Platform, Configuration and Architecture on the TargetRules. Add a constructor which takes the TargetInfo object and deprecate the parameterless one; these fields are currently initialized before invoking the constructor in RulesAssembly.

Change 3238564 on 2016/12/16 by Ben.Marsh

	UBT: Deprecate the ModuleRules constructor which takes a TargetInfo argument. Replace it with a read-only wrapper around the target rules instead, so target-specific configuration options can be read without needing to access global static variables. Also require that it's passed to the base class constructor.

Change 3239919 on 2016/12/19 by Ben.Marsh

	UBT: Remove the "PreferredSubPlatform" property. This is only used for Windows XP support, which is being retired anyway. Having the target define its own architecture is an awkward contractiction to maintain support for, since the target rules are constructed after the architecture already has been determined.

Change 3240061 on 2016/12/19 by Ben.Marsh

	UBT: Remove ThirdPartyHeaderFinder. I don't think anything is using this any more.

Change 3240175 on 2016/12/19 by Ben.Marsh

	UBT: Add the target name and project file location to the target rules.

Change 3240490 on 2016/12/19 by Ben.Marsh

	UAT: Remove Mac staging code that requires UAT to compile and construct .target.cs files when packaging, to check bUseSteam and bUseCEF3 flags. libsteam_api.dylib is now staged at build time by adding it as a bundle resource, CEF3 is already marked as a runtime dependency by CEF3.build.cs, and UnrealCEFSubProcess.app is already marked as a runtime dependency from WebBrowser.build.cs.

Change 3240717 on 2016/12/20 by Ben.Marsh

	UAT: Allow configuring UAT to run as if on a build machine by passing the -buildmachine argument on the command line.

Change 3240718 on 2016/12/20 by Ben.Marsh

	UAT: Remove target-specific properties that are no longer used by staging (bUsesSlate, bUsesCEF3, etc...). This stuff should all be handled inside UBT.

Change 3241002 on 2016/12/20 by Ben.Marsh

	UBT: Move most target configuration settings from UEBuildConfiguration to TargetRules. This encapsulates target specific settings that will allow instancing multiple targets in the future. To facilitate migration of settings to their new location, "UEBuildConfiguration" is now a property that returns the current target rules instance.

Change 3241027 on 2016/12/20 by Ben.Marsh

	Only copy the Steamworks dylib into the app bundle for monolithic builds. For all other times, just add it as a runtime dependency.

Change 3241055 on 2016/12/20 by Ben.Marsh

	UBT: Only store a ReadOnlyTargetRules object on the instanced build target; finalize the configuration before it's instantiated.

Change 3241156 on 2016/12/20 by Ben.Marsh

	Update SwarmInterface.csproj to .NET framework 4.5, to match what all other C# tools are using.

Change 3241205 on 2016/12/20 by Ben.Marsh

	Replace all uses of TargetRules.TargetType with TargetType.

Change 3241881 on 2016/12/21 by Ben.Marsh

	UBT: Remove project file information from UEBuildContext base class. As configurable properties are moved on to the TargetRules object, it will no longer be a dependency to instantiate the platform with this path.

Change 3241895 on 2016/12/21 by Ben.Marsh

	UBT: Remove toolchain support for Windows XP.

Change 3241908 on 2016/12/21 by Ben.Marsh

	UBT: Move settings for windows targets into a WindowsTargetRules class, which is exposed for targets to modify via the TargetRules.WindowsPlatform field.

Change 3242835 on 2016/12/22 by Ben.Marsh

	UBT: Fix multiple binaries being created if plugins specify module names more than once. MfMedia.uplugin has MfMediaFactory listed twice.

Change 3242837 on 2016/12/22 by Ben.Marsh

	Change UE4EditorServices to include MacSystemIncludes rather than Cocoa.h directly; causes FVector to be defined incorrectly in non-unity builds.

Change 3242923 on 2016/12/22 by Ben.Marsh

	Build: Fixes for conforming incremental workspaces:

	* P4 have table is now reset before deleting all the files. This prevents Perforce being out of sync if the delete fails for some reason.
	* Incremental workspaces are skipped when running a clean operation, because they do not have a workspace capture file (causing a full re-sync, always). The "P4 Clean" option is still effective for cleaning these workspaces.

Change 3242961 on 2016/12/22 by Ben.Marsh

	UBT: Move entry points from PreBuildSync() and PostBuildSync() from UEToolChain to UEBuildPlatform, and make the original toolchain versions static. These functions are already at odds with the rest of the data flow within UBT because they rely on global state cached outside the toolchain instance, making assumptions that UBT is only ever going to be invoked with one target that's constructed in the same run and that nothing is being cached (eg. UBT makefiles). Moving them onto UEBuildPlatform simplifies the toolchain lifecycle for other platforms without leaving Mac and IOS any more limited than they were before.

Change 3242981 on 2016/12/22 by Ben.Marsh

	UBT: Remove symbol server handling code into UAT's platform library, since it's never needed from inside UBT.

Change 3242999 on 2016/12/22 by Ben.Marsh

	UBT: Remove the StripSymbols() function from the UEToolChain base class. This functionality is only required by UAT, so it's better suited to being exposed through UAT's modular platform classes.

Change 3243022 on 2016/12/22 by Ben.Marsh

	UBT: Require an instance of the target rules to be able to construct a toolchain in UBT. This will allow configuring toolchain-specific options from the target, using reflection from config files, and the command line.

Change 3243083 on 2016/12/22 by Ben.Marsh

	UBT: Move settings for the Windows compiler version to use onto the Windows-specific target rules.

Change 3243090 on 2016/12/22 by Ben.Marsh

	UBT: Change the third party paths in UEBuildConfiguration to constants. Changing these would not work.

Change 3243423 on 2016/12/23 by Ben.Marsh

	UBT: Move a lot of settings from BuildConfiguration to TargetRules. This allows different targets to have different settings, naturally, and moves converts argument parsing and config to be driven by attributes.

Change 3243516 on 2016/12/23 by Ben.Marsh

	UBT: Remove the ValidateUEBuildConfiguration callback, which is no longer used. (XGE settings validation occurs in XGE.cs)

Change 3244020 on 2016/12/28 by Ben.Marsh

	UBT: Remove the BaseIntermediatePath static property. Precursor to removing RelativeEnginePath and IntermediateFolder properties.

Change 3244074 on 2016/12/28 by Ben.Marsh

	UBT: Remove the RelativeEnginePath variable from BuildConfiguration. UnrealBuildTool.EngineDirectory gives the absolute path, and can be used to construct a relative path when necessary.

Change 3244076 on 2016/12/28 by Ben.Marsh

	UBT: Remove BuildConfiguration.BaseIntermediateFolder; just use a fixed directory everywhere instead.

Change 3244083 on 2016/12/28 by Ben.Marsh

	UBT: Replace FileReference and DirectoryReference instance methods for manipulating files and directories with static methods, to mirror the System.IO.File and System.IO.Directory classes.

Change 3244441 on 2016/12/31 by Ben.Marsh

	UBT: Remove code to force PDBs when building with no debug info under XGE. Verified described symptoms (that it causes PCH generation to be serialized) no longer occur.

Change 3244687 on 2017/01/03 by Matthew.Griffin

	Changed Exception to use FirstInclude.IncludeName as PrecompiledHeaderIncludeFilename can be null when this occurs

Change 3246112 on 2017/01/04 by Ben.Marsh

	UBT: Fix UHT failures building some targets with the -useprecompiled option, due to differences in the order that circularly dependent modules are parsed. Precompiled binaries are now kept in the regular AppBinaries list, but are excluded from the build at the last minute. Also change some checks from IsEngineInstalled() to bUsePrecompiled, to prevent headers being overwritten when running in a non-installed precompiled build.

Change 3246223 on 2017/01/04 by Ben.Marsh

	UBT: Prevent version manifests being overridden if a file is not being built as part of the target.

Change 3246387 on 2017/01/04 by Ben.Marsh

	UBT: Remove BuildConfiguration settings for UnrealCodeAnalyzer. This tool isn't used at the moment, but it's configured using global variables accessed from all over the UBT codebase, making it difficult to refactor the build options into an instanced object. If we bring this tool back from the dead in the future, it should be possible to implement it using the exported JSON target definition or the XGE manifest, similarly to how IncludeTool uses it.

Change 3247004 on 2017/01/04 by Ben.Marsh

	UBT: Simplify the logic for cleaning targets in UBT. Now uses FileReference/DirectoryReference objects everywhere, doesn't require the compile/link environment, and does all the checking to avoid deleting precompiled binaries in one place.

Change 3247250 on 2017/01/04 by Ben.Marsh

	UBT: Prevent precompiled binaries being added to the list of app binaries twice.

Change 3247594 on 2017/01/05 by Ben.Marsh

	Build: Run sample and template editors on the same agents as the other incremental builds. Remove ProtoStar, which does not have any non-precompiled editor target to build.

Change 3247763 on 2017/01/05 by Ben.Marsh

	UBT: Allow the toolchain to update the list of build products for each module linked into a binary. Allows Mac to add dylibs and bundle resources specified per-module without having to construct a link environment and try to link them.

Change 3247775 on 2017/01/05 by Ben.Marsh

	UBT: Instance the target compile and link environments when they are required during building, and don't persist them on the UEBuildTarget instance.

Change 3247811 on 2017/01/05 by Ben.Marsh

	EC: Add a batch file for testing postp filters.

Change 3247839 on 2017/01/05 by Ben.Marsh

	EC: Include the name of the file being compiled when parsing MSVC errors and warnings.

Change 3248101 on 2017/01/05 by Ben.Marsh

	UBT: Fix Android support for force included headers.

Change 3248533 on 2017/01/05 by Ben.Marsh

	PR #3097: UBT project supports optional platforms (Contributed by PrimalJohnScott)

Change 3249205 on 2017/01/06 by Ben.Marsh

	UAT: Fix ParseTaggedP4Output throwing an exception if the same key name is specified more than once. This can happen when parsing the output from "P4 INFO", where multiple brokers are present.

Change 3249249 on 2017/01/06 by Ben.Marsh

	UBT: Check for the existance of AndroidManifest.xml within extracted AAR directories, rather than just checking for the existance of the directory itself. Perforce does not remove empty directories when cleaning a workspace unless the rmdir option is on the workspace, so this can cause incremental build failures to fail on build machines.

Change 3249486 on 2017/01/06 by Ben.Marsh

	UBT: Use relative paths in unity files when compiling for Mac/IOS, rather than generating a separate local/remote version of the file for gathering include dependencies. Absolute paths are only used to work around the way that MSVC concatenates paths internally; we don't hit the same problems when checking dependencies.

Change 3249736 on 2017/01/06 by Ben.Marsh

	UBT: Rename CPPEnvironment to CppCompileEnvironment, and remove the separate CPPEnvironmentConfiguration object. All settings are now stored directly on the CppCompileEnvironment object.

Change 3250179 on 2017/01/07 by Ben.Marsh

	Fix creating installed build when root directory contains a space in the name.

Change 3250181 on 2017/01/07 by Ben.Marsh

	UBT: Remove some esoteric (and unused, AFAIK) options for orthogonally building different platforms.

Change 3250223 on 2017/01/07 by Ben.Marsh

	UBT: Merge the LinkEnvironment and LinkEnvironmentConfiguration classes together.

Change 3250233 on 2017/01/07 by Ben.Marsh

	UGS: Allow specifying a workspace-specific sync filter, which is applied on top of the standard filter. Also fix filter being cleared if the cancel button is pressed, and help text being stripped out.

Change 3250241 on 2017/01/07 by Ben.Marsh

	UBT: Move the options for specifying additional Android architectures to target onto an Android-specific object on the TargetRules.

Change 3250400 on 2017/01/08 by Ben.Marsh

	UBT: Move executor config settings onto the executor instances.

Change 3257708 on 2017/01/13 by Ben.Marsh

	UBT: Remove the ThirdPartySourceDirectory constant; there are many places which hard-code or assume this location anyway, and it's not going to change.

Change 3260535 on 2017/01/17 by Ben.Marsh

	Add an optional "RequiredSubmittedChange" setting to EC settings files. Allows a scheduled job to run even if there have been no code changes submitted. Test with the utilization capture job.

Change 3260875 on 2017/01/17 by Ben.Marsh

	EC: Fix workspaces getting out of sync wrt. newly added files when jobs are aborted during a sync. In such cases, the P4 have table indicates the new files have been synced locally, but the workspace is forced back to a state before it had them due to the capture file. When a following sync tries to add them again, P4 believes the workspace already has them synced.

	To work around this, we now write an additional file to the root folder of a workspace containing the last CL that was captured, and sync back to it before doing the reconcile.

Change 3261724 on 2017/01/18 by Ben.Marsh

	Allow filtering job types from the list view in EC. Hide the utilization capture job by default. Also set up notifications for the utilization capture job.

Change 3261756 on 2017/01/18 by Ben.Marsh

	IncludeTool: Prevent matching a full enum declaration as a forward declaration.

Change 3261932 on 2017/01/18 by Ben.Marsh

	EC: Add support for specifying days of the week in schedules. The following syntaxes are supported:

	"Monday, Tuesday and Wednesday at 10:30"
	"Daily except Sunday and Wednesday at 14:30"

	 Also tweak display of dates relative to now to handle dates/times in the future, and include the date when specifying a day name.

	#jira UEB-729

Change 3262676 on 2017/01/18 by Ben.Marsh

	UBT: Split UBTMakefile into its own file. (From PR #3106)

Change 3263893 on 2017/01/19 by Ben.Marsh

	UBT: Stop exporting platform classes from UBT, as well as all the referenced classes that have to be made public as a result. Any platform-specific functionality that needs to be shared with UAT is now exposed through wrappers in separate public classes, eg. WindowsExports.cs, IOSExports.cs, etc...

Change 3264291 on 2017/01/19 by Ben.Marsh

	UBT: Fix errors generating documentation in UBT, and enable it by default. Will catch more errors with new code being added. Originally in PR #3106, but redone due to conflicts.

Change 3264534 on 2017/01/19 by Ben.Marsh

	UBT: Include plugin config files in generated projects.

Change 3264571 on 2017/01/19 by Ben.Marsh

	UBT: Prevent overwriting .modules files if nothing has changed. On builders, it's common to build multiple editors in the same workspace, and changing the last modified timestamp causes BuildGraph to fail due to tampered files.

Change 3265745 on 2017/01/20 by Ben.Marsh

	UGS: Automatically open UGS when running the launcher for a second time, rather than prompting to close the original instance.

Change 3265777 on 2017/01/20 by Ben.Marsh

	UGS: Automatically close and reopen when UGS is re-ran with the shift key held down to switch into unstable mode.

Change 3268314 on 2017/01/23 by Ben.Marsh

	UBT: Make sure version manifests are stable by sorting the list of build products, so they are only touched if the contents have really changed.

Change 3269601 on 2017/01/24 by Ben.Marsh

	UBT: Fix symbol files being added to manifest for some platforms even though debug info is disabled.

Change 3269607 on 2017/01/24 by Ben.Marsh

	UBT: Fix bug where UBT would need to be invoked when switching between two editors sharing the same engine binaries on Mac. The location of the .modules file cannot be guessed on Mac by looking in the same directory as the primary output executable because it's an .app bundle, and the actual modules are nested several directories below that.

Change 3269608 on 2017/01/24 by Ben.Marsh

	UBT: Fix additional files copied into the app bundle always being updated on Mac. Now uses rsync --checksum to make sure only modified files are updated.

Change 3271062 on 2017/01/24 by Ben.Marsh

	UBT: Fixes for bugs detected by PVS Studio (PR #3161)

Change 3272421 on 2017/01/25 by Ben.Marsh

	Fix commends regarding DDC in BaseEngine.ini

	#jira UE-41076

Change 3272810 on 2017/01/25 by Ben.Marsh

	Fix VS2017 being displayed as 'Visual Studio 15' in the Windows target settings panel.

Change 3272935 on 2017/01/25 by Ben.Marsh

	Fix Metal errors launching on Mac due to use of OSX environment settings before they are initialized. Toolchain settings are now constructed on demand in a separate class, for Mac, iOS and TVOS.

Change 3274167 on 2017/01/26 by Ben.Marsh

	Fix resource files not being compiled in installed builds on Windows. Was causing metadata not to be embedded into executables.

	#jira UE-36457

Change 3275557 on 2017/01/27 by Ben.Marsh

	Expand checks for propagation of restricted folder names to include source files, and to ensure that each restricted folder is represented in the output. Also improve messaging to show the dependency chain leading to a restricted folder being referenced, and which folder it is.

Change 3275628 on 2017/01/27 by Ben.Marsh

	UBT: Splitting configuration files into one class per-file.

Change 3276784 on 2017/01/29 by Ben.Marsh

	Add an authoritative list of confidential folder names, and expose it through global BuildGraph properties ($(RestrictedFolderNames) and $(RestrictedFolderFilter)). Also switch existing scripts to use it.

Change 3276792 on 2017/01/29 by Ben.Marsh

	UBT: Use UE4CSharp.prog files to indicate which projects should be included in the solution without having to hard-code a list of them in UBT.

Change 3277263 on 2017/01/30 by Ben.Marsh

	IncludeTool: Merging various fixes.

	* Fix warnings about #include directives after first code block from parsing monolithic headers.
	* Fix exception on startup if the intermediate directory does not already exist.
	* Add a special case for ignoring missing header guards from MonolithicHeaderBoilerplate.h, rather than marking it as an inline header. Marking it as inline prevents parsing include directives, which results in including CoreTypes.h from the wrong location.
	* Create job objects for spawned compiler instances to prevent them trying allocating more memory than the system can spare.
	* Remove (unused) code which makes assumptions about files ending with "Classes.h".
	* Add a verbose per-file output log to aid with debugging.
	* Negate the MakeStandalone command line option, which was added to allow tweaking forward declarations in already optimized files, so the optimized output does not have missing headers by default.
	* Fix missing headers when creating standalone files, due to incorrect list of previous files being passed in to the OutputFile constructor. Now passes the original list of included files, not the output list.
	* Fix initial header for a cpp file sometimes being removed. Forcibly including a header at the start of the file does not use the normal pathway for spidering through includes, so a second include of the same file was being generated. Any includes of that header were being forced into output, and the earlier include was then removed due to being redundant.
	* Prevent forward declaring enums which have to be parsed by UHT. UHT relies on includes to determine a parse order, and will fail if the enum definition has not been parsed first.
	* Use a relative path for private includes in the same module if there are any. Fixes some incorrect paths, and makes it clearer that we're doing something we shouldn't.

Change 3277307 on 2017/01/30 by Ben.Marsh

	UBT: Fix private PCHs not using correct header. Causes custom definitions to be excluded from the command line.

[CL 3278101 by Ben Marsh in Main branch]
2017-01-30 16:52:08 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
9d31d5e4e0 Fix UE4Game XboxOne compile errors, and UE4Editor Win64 static analysis warnings in non-unity.
#rb none
#lockdown Nick.Penwarden

[CL 3210607 by Ben Marsh in Main branch]
2016-11-27 17:51:22 -05:00
Ben Marsh
4ba423868f 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
Matt Kuhlenschmidt
e2ba04378b Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3133954)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3077573 on 2016/08/04 by Nick.Darnell

	Removing some unused code, adding additional needed modules to editor tests.

	#rb none

Change 3077580 on 2016/08/04 by Nick.Darnell

	Removing the test plugins, going to be recreating them in EngineTest.

Change 3082659 on 2016/08/09 by Nick.Darnell

	Automation - Presets are now stored in json files stored in Config so they can be shared, and human readable.  Working on screenshot automation, getting it where it needs to be to permit us to have repeatable tests for comarison.  Removing the option to not take full size screenshots, that defeats the purpose of being able to compare them.

	#rb none

Change 3082766 on 2016/08/09 by Jamie.Dale

	Fixed crashes when dealing with code-points outside the BMP on platforms with UTF-32 FStrings

	ICU always deals with its offsets as UTF-16 (as it always uses UTF-16 internally with icu::UnicodeString), so there were a couple of places in code (break iteration, and bidi detection) where we needed to adjust those UTF-16 offsets to UTF-32 offsets in the case where FString is UTF-32.

	#jira UE-33971
	#rb James.Hopkin

Change 3083067 on 2016/08/09 by Nick.Darnell

	Automation - Working on screenshot support, system now allows a lot more customization in terms of how large the shot is.

	#rb none

Change 3084475 on 2016/08/10 by Richard.TalbotWatkin

	Fixed issue with ModelComponent replication in client/server PIE if BSP is rebuilt. ModelComponent now implements IsNameStableForNetworking and always returns true, as a level's model components will never be rebuilt during a game session. Brush poly normals are now only fixed up in Editor builds.
	#jira UE-34391 - No run animation on client that is not focused when running 2 player and dedicated server
	#codereview Matt.Kuhlenschmidt
	#rb none

Change 3084661 on 2016/08/10 by Matt.Kuhlenschmidt

	Added grayscale texture importing support

	#rb none

Change 3084774 on 2016/08/10 by Cody.Albert

	Adding controller support for ComboBox widget

	#jira UE-33826
	#rb nick.darnell

Change 3085716 on 2016/08/11 by Nick.Darnell

	UMG - Taking the Widget Component and Widget Interaction Components out of experimental.  Removed old importing support for upgrading ancient versions of widget components.  Removing parbola distortion, as users can now do whatever they want in their custom MID they can override the widget with.

	#rb none

Change 3085733 on 2016/08/11 by Nick.Darnell

	UMG - Documenting the meta parameters allowed on widgets, like we do for regular UObjects.  For binding widgets from blueprints you can now do BindWidget (unchanged), and to simplify binding widgets optionally, you can now just do (BindWidgetOptional), rather than the combination of BindWidget + OptionalWidget=true.  Made generating the Design time wrapper call a little more efficent, by optimizing it away by force inlining a noop.  Also added some additional checking when we forcefully set focus in UMG, to help people catch cases where they set focus, but didn't make the widget focusable.

	#rb none

Change 3085734 on 2016/08/11 by Nick.Darnell

	Texture - Making GetDefaultMipMapBias a bit more efficent in the common case.

	#rb none

Change 3085736 on 2016/08/11 by Nick.Darnell

	Static Lighting - Warning the user when they build lighting, but have bForceNoPrecomputedLighting set to true on the world settings.

	#rb none

Change 3085737 on 2016/08/11 by Nick.Darnell

	Editor - code organization.

	#rb none

Change 3085875 on 2016/08/11 by Nick.Darnell

	UMG - You can now use 'G' to toggle game mode on the designer so that you can disable and enable the dashed lines around containers.  The option in the settings is now used as the default when you startup a designer.

	#rb none

Change 3086209 on 2016/08/11 by Ben.Salem

	Make our automated test pass reporting more robust and pipe out to JSON in \saved\automation\logs\AutomationReport-{CL}-{Timestamp}.json format.
	#rb adric.worley, william.ewen

Change 3086515 on 2016/08/11 by Nick.Darnell

	Editor - Fixing a crash in the curve table customization.  If the row doesn't exist, it would crash, we now protect against that case.

	#rb Matt.Kuhlenschmidt

Change 3087216 on 2016/08/12 by Jamie.Dale

	Fixed an issue where re-scanning a package file may leave old assets in the asset registry

	We didn't used to clear out anything associated with the old package before scanning the file, which could result in old assets being left if they'd since been removed from the package.

	This also exposes a PackageDeleted function to allow people to manually clear anything associated with a package (if doing some custom asset work).

	#rb Andrew.Rodham

Change 3087219 on 2016/08/12 by Jamie.Dale

	Updated TextRenderComponent to support multiple font pages

	It used to use the correct UV data, but wouldn't set the correct texture page when rendering. It now creates MIDs for all of the texture pages used by the font, and will use these MIDs (which override the font page on the material) when rendering the text (batched on sequential index/vertex buffer data with the same texture page).

	#rb Matt.Kuhlenschmidt

Change 3087308 on 2016/08/12 by Alex.Delesky

	#jira UE-14727  - Support for editing TSet properties in the editor's Details panel has been added.

	#rb Matt.Kuhlenschmidt

Change 3089140 on 2016/08/15 by Jamie.Dale

	We now abort a directory watch if we lose access to the directory in question

	This prevents an infinite loop in the call to MsgWaitForMultipleObjectsEx if a watched directory is deleted.

	#jira UE-30172
	#rb Andrew.Rodham

Change 3089148 on 2016/08/15 by Alexis.Matte

	Allow fbx export of any actor type.
	#rb none
	#codereview dmitriy.dyomin

Change 3089211 on 2016/08/15 by Jamie.Dale

	Unified access to the parent window for external dialogs

	A lot of places used to ad-hoc use the MainFrame window, even when they had access to a widget that may be belong to a different window. This could cause issues where an external dialog could appear behind a modal UE4 window (as it would appear above the MainFrame), and be inaccessible.

	You can now use IMainFrameModule::GetBestParentWindowHandleForDialogs to get the best window handle to use for an external dialog. This will either be the parent window for the given widget (if known), or failing that, the MainFrame window.

	#rb Andrew.Rodham

Change 3089640 on 2016/08/15 by Jamie.Dale

	Wrapped UMaterialExpression::MenuCategories in WITH_EDITORONLY_DATA to avoid gathering it for game-only loc

	#rb none

Change 3089661 on 2016/08/15 by Nick.Darnell

	Editor - There's a new view option "Show C++ Classes" in the content browser.  Lets you hide all those C++ folders most folks probably don't care to see.

	#rb none

Change 3089667 on 2016/08/15 by Cody.Albert

	Updating RoutePointerUpEvent to call OnDrop for touch events when dragging

	#jira UE-34709
	#rb nick.darnell

Change 3089694 on 2016/08/15 by Jamie.Dale

	Applied a fix to the ExcludeClasses setting in the loc gather

	#rb none

Change 3089889 on 2016/08/15 by Nick.Darnell

	Automation - Continued work on the screenshot portion of the automation system.  Going to start using the adapter information in the screenshots taken, otherwise we can't accurately test a plethora of devices sharing the same OS, with different capabilities.

	#rb none

Change 3090256 on 2016/08/16 by Nick.Darnell

	Automation - working on screenshots.
	#rb none

Change 3090322 on 2016/08/16 by Nick.Darnell

	Automation - Adding modified screenshot function.

	#rb none

Change 3090335 on 2016/08/16 by Nick.Darnell

	Automation - The tests were determined to need to be shared afterall, but at least keeping them as plugins.  Moved to Engine plugins.

	#rb none

Change 3090881 on 2016/08/16 by Nick.Darnell

	Automation - Moving the content over and fixing up some code so that the AutoRimport tests work as expected.

	#rb none

Change 3090884 on 2016/08/16 by Nick.Darnell

	Plugins - There's now support for generating a Content Only plugin from the new plugin wizard.

	#rb none

Change 3090911 on 2016/08/16 by Nick.Darnell

	Feature Packs - If there's an error loading a manifest, it's now an error, not a warning.

	#rb none

Change 3090913 on 2016/08/16 by Jamie.Dale

	Optimization and usability improvements of the MemoryProfiler2 tool

	 - Optimized the processing of the Callgraph, Histogram, and Short lived allocations views.
	    - The callgraph view is now using a virtualized tree view mapped to our own internal tree. This allows us to amortize the cost of adding nodes to the TreeView as the user views the nodes in the tree. In my own test, this took callgraph generation from ~45 seconds to ~5 seconds.
	    - The Histogram view was vastly optimized via the use of a HashSet on the callstack filter, and the batch addition of unsorted callstacks that are sorted once at the end. In my own test, this took histogram generation from ~15 minutes to ~2 seconds.
	    - The Short lived allocations view was optimized by avoiding redundant sorting, including maintaining a sorted order while inserting items, and instead doing a final sort at the end. The column selection was also optimized by avoiding copying the entire dataset just to resort it. In my own test, this took short lived allocation generation from ~1 minute to ~3 seconds.

	 - Added a user-configurable list of allocator functions to trim (which now includes FMemory and operator new by default, and produces much cleaner callstacks).

	#jira UETOOL-948
	#jira UETOOL-949
	#rb James.Hopkin

Change 3090962 on 2016/08/16 by Jamie.Dale

	Fixed double assignment of filter functions

	#rb none

Change 3090989 on 2016/08/16 by Nick.Darnell

	Editor - Attempting to fix the build, non-unity issue I suspect.

	#rb none

Change 3091754 on 2016/08/17 by Nick.Darnell

	FbxAutomationTestBuilder is now a plugin.  Users won't see it unless they've enabled the plugin (so primarily internal QA).  Reorganized the automation tools and testing menu to be a bit lower in the main menu, and gave them a more test sounding name.  Additionally made some modifications to the workspace menu structure to allow generating just a subset of a workplace menu so that I could target where I wanted to insert all of the automation tool menu items, rather than just allowing the general placement of them under developer tools...etc.

	#rb none
	#codereview Alexis.Matte

Change 3091758 on 2016/08/17 by Nick.Darnell

	Slate / Editor - Trying to make the editor less focus greedy.  Now when there are notification popups and tabs attempt to grab your attention we now do a few activation ownership checks to ensure that it or a parent window actually owns activation.  Not doing this has the nasty side effect of things like notifications and message log errors that popup while playing the game (if the game is in new window PIE), causing the game to be hidden, and focus returned to the editor.  Ran into this a lot running the automation tests, the new PIE window that's launched to run tests is immediately hidden as soon as the tests log a warning or error or a notification about high res screenshots happens.

	#rb none

	#codereview Nick.Atamas,Matt.Kuhlenschmidt

Change 3091829 on 2016/08/17 by Nick.Darnell

	Build - Attempting to repair the build.

	#rb none

Change 3091920 on 2016/08/17 by Nick.Darnell

	Build - Another attempt at fixing the mac build.

	#rb none

Change 3093380 on 2016/08/18 by Matt.Kuhlenschmidt

	Ignore group actors when checking for references to other actors when deleting.  The check for references is designed for gameplay affecting references which groups are not.  Having this show up for groups is annoying

	#rb none

Change 3094474 on 2016/08/19 by Jamie.Dale

	Fixed PS4 error when building with USE_MALLOC_PROFILER, and optimized symbol name resolution for a build with USE_MALLOC_PROFILER enabled

	#jira UETOOL-951
	#rb James.Hopkin

Change 3094581 on 2016/08/19 by Jamie.Dale

	Added missing allocator filter needed by PS4 profiles

	#rb none

Change 3094681 on 2016/08/19 by Richard.TalbotWatkin

	Fixed issue where painting override vertex colors on a SpeedTree mesh would cause its wind animation to cease. The OverrideVertexColors vertex factory needed to be registered with the SpeedTree renderer.
	#jira UE-32762 - Custom VertexPaint on SpeedTrees interferes with wind animation
	#rb none

Change 3095163 on 2016/08/19 by Trung.Le

	#jira UE-20849: Added tooltips to the inputs of the Material final result node
	#rb matt.kuhlenschmidt

Change 3095285 on 2016/08/19 by Trung.Le

	#jira UE-20849 In SGraphNodeMaterialResult, renamed ToolTip to ToolTipWidget so we're not hiding class member
	#rb none

Change 3095344 on 2016/08/19 by Alexis.Matte

	#jira UE-34690 When using the optionnal matrix to change the scene root node, we have to flush the fbx evaluation engine.
	Add also a new option to allow the user to automatically convert the fbx scene to unreal unit (centimeter).

	#rb none
	#codereview matt.kuhlenschmidt

Change 3096162 on 2016/08/22 by Alexis.Matte

	#jira UE-34763 Remove offending no-action combo box entry when the json file is readonly. Also clean up other combo box menu.
	#rb none
	#codereview matt.kuhlenschmidt

Change 3096261 on 2016/08/22 by Alexis.Matte

	#jira UE-33121 Make sure re-import all and import all fix all the issue before starting the job. So it get not interrupt during the process.

	#rb lina.halper
	#codereview lina.halper

Change 3096344 on 2016/08/22 by Jamie.Dale

	NSString conversion fix for UTF-32 strings containing characters outside of the BMP

	#jira UE-33971
	#rb Peter.Sauerbrei, James.Hopkin

Change 3096605 on 2016/08/22 by Alex.Delesky

	#jira UE-34787 - Dropdown menus in standalone programs will now correctly display tooltips if they have any.

	#rb Matt.Kuhlenschmidt

Change 3096615 on 2016/08/22 by Alex.Delesky

	#jira UE-33334 - Scrolling up on the mouse wheel when using the orbit camera should no longer move away from the orbit point when the camera moves too close to the orbit origin.

	#rb Matt.Kuhlenschmidt

Change 3096619 on 2016/08/22 by Alex.Delesky

	#jira UE-34084 - Structs containing an enum with a value that contains a whitespace character will now serialize correctly when copied from the Details Panel.

	#rb Matt.Kuhlenschmidt

Change 3097644 on 2016/08/23 by Matt.Kuhlenschmidt

	PR #2729: Fix a typo in the comment (Contributed by adcentury)

	#rb none

Change 3097648 on 2016/08/23 by Matt.Kuhlenschmidt

	PR #2726: Undef unused macros (Contributed by shrimpy56)

	#rb none

Change 3097697 on 2016/08/23 by Matt.Kuhlenschmidt

	Guard against crash when details panels rebuild when their customizations have been torn down

	https://jira.ol.epicgames.net/browse/UE-35048

	#rb none

Change 3097757 on 2016/08/23 by Alex.Delesky

	#jira UE-14727  - Support for editing TMap properties in the editor's Details panel has been added. This change also removes the Duplicate option from TSet elements, and disallows entry of duplicates elements into a TSet or duplicate keys into a TMap

	#rb Matt.Kuhlenschmidt

Change 3098164 on 2016/08/23 by Alexis.Matte

	#jira UE-34686 Fbx importer bImportMeshesInBoneHierarchy is used also by the animation.
	#rb none
	#codereview matt.kuhlenschmidt

Change 3098502 on 2016/08/23 by Alexis.Matte

	#jira UE-30951 Fbx option dialog, we disable the option to bake pivot if transform vertex position is true
	#rb none
	#codereview matt.kuhlenschmidt

Change 3099986 on 2016/08/24 by Jamie.Dale

	Fixing non-editor builds

	#rb none

Change 3101138 on 2016/08/25 by Matt.Kuhlenschmidt

	Fixed viewport redraw callback not being called when certian property modifications occur in the details panel (reset to default, array size changes, etc)

	#rb none

Change 3101280 on 2016/08/25 by Jamie.Dale

	Fixed crash when counting memory over internationalization meta-data

	- The serialization code only used to handle loading or saving, now it handles loading or not loading.
	- The Type of the meta-data wasn't set by all constructors. For safety it has been removed and replaced with a virtual function that the derived types override.

	#rb James.Hopkin

Change 3101283 on 2016/08/25 by Jamie.Dale

	MProf2 platform and symbol parsing improvements

	 - Updated ISymbolParser to work with lazy symbol resolution (handled via the UI when looking at full callstacks).
	 - Added a PS4 symbol parser which handles performing full file/line resolution for symbols.
	 - Removed all the V3 file format support and legacy platform handling.
	 - Optimized FStreamInfo.GetNameIndex so it can be used by the lazy symbol fixup.

	#rb James.Hopkin

Change 3101586 on 2016/08/25 by Jamie.Dale

	Small code cleanup and path normalization

	#rb James.Hopkin

Change 3101837 on 2016/08/25 by Alexis.Matte

	#jira UE-35101 we now store the sourceanimationname to retrieve the correct animtrack when re-importing animations
	#rb none
	#codereview matt.kuhlenschmidt

Change 3102537 on 2016/08/26 by Jamie.Dale

	Fix for potential crash in FICUCamelCaseBreakIterator

	In platforms with UTF-32 strings, the index returned by FICUTextCharacterIterator may not be in the same range as FString, so we need to call InternalIndexToSourceIndex to ensure that it is.

	#rb James.Hopkin

Change 3102582 on 2016/08/26 by Matt.Kuhlenschmidt

	Log the freetype version when it starts up (for debugging purposes)

	#rb none

Change 3102657 on 2016/08/26 by Alexis.Matte

	#jira UE-29177 When re-importing a texture we want to notify materials using this texture so they can recompile the shader.
	#review-3101585 @uriel.doyon
	#rb matt.kuhlenschmidt

Change 3102704 on 2016/08/26 by Jamie.Dale

	Added symbol meta-data support to MProf2

	You can now define platform specific meta-data using FPlatformStackWalk::GetSymbolMetaData, which is then stored within the generated .mprof file.

	PS4 uses this meta-data to say where the original .self file can be found, so that MProf2 can usually automatically load the .self file without having to bother the user.

	#rb James.Hopkin

Change 3102878 on 2016/08/26 by Matt.Kuhlenschmidt

	Added support for outline fonts
	- An outline size (in slate units), optional material and optional fill color can be specified with each font info.
	- Outlines do not contribute to measurement directly so the text measuring and shaping methods have been modified to account for outlines
	- Fixed a bug where font materials do not work properly if part of the font's rendered glyphs were in a different atlas

	#rb jamie.dale

Change 3102879 on 2016/08/26 by Jamie.Dale

	Bumped the MProf2 version so we can tell which build of the tool can load v6 mprof files

	#rb none

Change 3102960 on 2016/08/26 by Alexis.Matte

	build fix
	#rb none

Change 3103032 on 2016/08/26 by Jamie.Dale

	Fixed SEditableText and SMultiLineEditableText not setting the correct foreground color when painting

	#jira UE-34936
	#rb Matt.Kuhlenschmidt

Change 3103278 on 2016/08/26 by Jamie.Dale

	Fixing Clang warnings

	#rb none

Change 3104211 on 2016/08/29 by Ben.Marsh

	Add build script for automated tests, and create settings file for Dev-Editor which adds an agent pool for running them.

	#rb none

Change 3104290 on 2016/08/29 by Alex.Delesky

	Adding additional documentation accessible from the editor for TSet and TMap properties, along with a quick clarification on container properties to let the user know what kind of container they're working with.

	#rb Matt.Kuhlenschmidt

Change 3104292 on 2016/08/29 by Alex.Delesky

	#jira UE-35039 - Command/Control user keybindings will no longer flip-flop when the editor is opened on Mac.

	#rb Matt.Kuhlenschmidt

Change 3104294 on 2016/08/29 by Alex.Delesky

	#jira UE-34952 - The user will no longer encounter an ensure when setting the value of Period equal to or less than 0 on the circular throbber widget

	#rb Matt.Kuhlenschmidt

Change 3104295 on 2016/08/29 by Matt.Kuhlenschmidt

	PR #2682: Remove unused bUseDesktopResolutionForFullscreen (Contributed by stfx)

	#rb none

Change 3104296 on 2016/08/29 by Alex.Delesky

	#jira UE-35160 - The Auto Distance Error for LOD meshes can now be set to any value larger than zero.

	#rb Matt.Kuhlenschmidt

Change 3104348 on 2016/08/29 by Matt.Kuhlenschmidt

	Added the ability to clear the preview mesh on a material instance.  Previously there was no way to null it out.

	#rb none

Change 3104355 on 2016/08/29 by Matt.Kuhlenschmidt

	Guard against crash with invalid path to the default physical material.  Just create a new one if it doesnt exist and warn about it.

	#rb none
	#jira UE-31865

Change 3104396 on 2016/08/29 by Ben.Marsh

	Fix incrorrect agent names for running automated tests

Change 3104610 on 2016/08/29 by Alex.Delesky

	Fix for AutomationTool compile editor from changes introduced today.

	#rb None

Change 3104611 on 2016/08/29 by Michael.Dupuis

	#jira UETOOL-253
	#rb Alexis.Matte

Change 3105826 on 2016/08/30 by Gareth.Martin

	Added console variables to discard grass and/or scalable foliage data on load
	#jira UE-35086
	#rb Benn

Change 3106126 on 2016/08/30 by Matt.Kuhlenschmidt

	Eliminated bad code duplication between retainer widgets and element batcher

	#rb none
	#codereview nick.darnell

Change 3106449 on 2016/08/30 by Michael.Dupuis

	#jira UETOOL-229 Added generic command icons used in Edit Menu (including contextual menu)
	#rb Alexis.Matte

Change 3106966 on 2016/08/30 by Jamie.Dale

	Fixed FApp::IsAuthorizedUser not considering the SessionOwner override

	#rb Max.Preussner

Change 3107687 on 2016/08/31 by Michael.Dupuis

	Checkout/Make Writable on proper config file

	#rb Matt Kuhlenschmidt

Change 3107736 on 2016/08/31 by Matt.Kuhlenschmidt

	Fixed mode typos in the lerp instruction

	#rb none

Change 3107830 on 2016/08/31 by Matt.Kuhlenschmidt

	Logging and guard against UEditorEngine::TeardownPlaySession crash.

	#rb none
	https://jira.ol.epicgames.net/browse/UE-35325

Change 3107912 on 2016/08/31 by Alex.Delesky

	#jira UE-35181 - Normalizing paths when retrieving absolute filenames for source control operations.

	#rb Matt.Kuhlenschmidt

Change 3107986 on 2016/08/31 by Matt.Kuhlenschmidt

	Removed PropertyTestObject.h out of UnrealEd.h so you dont have to compile the entire editor when changing this one file.

	#rb none

Change 3108027 on 2016/08/31 by Chris.Wood

	Re-added lost doc comment for analytics event "Engine.AbnormalShutdown".

	#rb none - just a comment in a cpp file
	#codereview wes.hunt

Change 3108580 on 2016/08/31 by Mike.Fricker

	Deleted the "Live Editor" plugins from UE4
	- These were undocumented, buggy and never finished, and we have no plans to complete them
	- Both the "LiveEditor" and "LiveEditorListenServer" plugins were deleted, along with related icon files

	#codereview matt.kuhlenschmidt
	#rb matt.kuhlenschmidt

Change 3108604 on 2016/08/31 by Mike.Fricker

	Added new "MIDI Device" plugin (disabled by default)

	- This is a simple MIDI interface that allows you to receive MIDI events from devices connected to your computer

	- Currently only input is supported.  In the future we might allow for output, as well.

	- In Blueprints, here's how to use it:
	        - Look for "MIDI Device Manager" in the Blueprint RMB menu
	        - Call "Find MIDI Devices" to choose your favorite device.  Break the "Found MIDI Device" struct to see what's available.
	        - Then call "Create MIDI Device Controller" for the device you want.  Store that in a variable.
	        - On your MIDI Device Controller, bind your own Event to the "On MIDI Event" event.  This will be called every game Tick when there is at least one new MIDI event to receive.
	        - Process the data passed into the Event to make your project do stuff!

	- This plugin makes use of the "PortMidi" third party library (which already existed in UE4 -- it was used by the now-deprecated 'LiveEditor' plugin)

	#codereview matt.kuhlenschmidt
	#rb none

Change 3108760 on 2016/08/31 by Alexis.Matte

	#jira UE-25840 Fbx export collision mesh, we now export collision: box, sphere, capsule and convex mesh. There is an option in the editor preference to enable the export of collisions, default value is false.
	#rb none
	#codereview matt.kuhlenschmidt

Change 3109006 on 2016/08/31 by Alex.Delesky

	#ignore Source Control rename test - initial commit

Change 3109044 on 2016/08/31 by Alex.Delesky

	#ignore Testing asset rename from P4 to observe correct behavior.

	#rb none

Change 3109048 on 2016/08/31 by Alex.Delesky

	#ignore Testing P4 rename to identify correct behavior

	#rb none

Change 3110044 on 2016/09/01 by Gareth.Martin

	Fixed painting foliage on blocking "query" actors not working
	#jira UE-33852
	#rb Allan.Bentham

Change 3110133 on 2016/09/01 by Alexis.Matte

	Fix crash in function GetForceRecompileTextureIdsHash
	#rb none
	#codereview jamie.dale

Change 3111848 on 2016/09/02 by Mike.Fricker

	MIDI Device plugin: Fixed compilation error on Clang compilers (Mac, Linux)
	- Fixed bad enum cast
	#rb none

Change 3111995 on 2016/09/02 by Michael.Dupuis

	#jira UE-35263

	Do not try selecting the actor if the actor is in the blueprint
	Properly Refresh the ToopTip & Hyper Link to take into account blueprint recreation process

	#rb Alexis Matte

Change 3112280 on 2016/09/02 by Michael.Dupuis

	Call MakeWritable if source control fail

	#rb Alexis Matte

Change 3112335 on 2016/09/02 by Cody.Albert

	Updating cursor hiding logic to not improperly hide cursor when left clicking in ortho mode

	#jira UE-35306
	#rb none

Change 3112478 on 2016/09/02 by Alexis.Matte

	#jira UE-20059 Use a base material to import fbx material.
	#rb uriel.doyon
	#codereview matt.kuhlenschmidt
	#1468 Github pull request number

Change 3113912 on 2016/09/06 by Michael.Dupuis

	#jira UE-32288 Fixed Console params display
	#rb Alexis Matte

Change 3114026 on 2016/09/06 by Alex.Delesky

	#jira UE-35123 - The Details panel in a Texture editor or Simple Asset editor window will no longer disappear when the inspected asset is imported again.

	#rb Matt.Kuhlenschmidt

Change 3114032 on 2016/09/06 by Alex.Delesky

	PR #2733: Improved the project launcher progress page (Contributed by projectgheist)

	#jira UE-34027
	#rb Matt.Kuhlenschmidt

Change 3114034 on 2016/09/06 by Alex.Delesky

	#jira UE-35265 - Copying a comment node from a Material Function and pasting it inside a Material will no longer render the Material unsaveable

	#rb Matt.Kuhlenschmidt

Change 3114071 on 2016/09/06 by Nick.Darnell

	[AUTOMATED TEST] Automatic checkin, testing functionality.

Change 3114109 on 2016/09/06 by Nick.Darnell

	[AUTOMATED TEST] Automatic checkin, testing functionality.

Change 3114562 on 2016/09/06 by Nick.Darnell

	Adding LevelEditor to the FbxAutomationTestBuilder to fix a compiler issue.

	#rb none

Change 3114701 on 2016/09/06 by Michael.Dupuis

	#jira UE-31988 add const to all usage of TArray<ItemType>* as it was done in SListView
	#rb Alexis Matte

Change 3114861 on 2016/09/06 by Matt.Kuhlenschmidt

	Prevent non-thread safe slate code from running on the slate loading thread

	#rb none

Change 3115698 on 2016/09/07 by Nick.Darnell

	Make sure the commands are available - during functional testing that was found to not always be the case.

	#rb none

Change 3115719 on 2016/09/07 by Nick.Darnell

	Adding an IsRegistered command to commands.

	#rb none

Change 3115721 on 2016/09/07 by Nick.Darnell

	Adding a new built VirtualReality feature pack, this new one contains the update manifest that will parse correctly.

	#rb none

Change 3115722 on 2016/09/07 by Nick.Darnell

	IsBindWidgetProperty now returns false if the property passed in is null.

	#rb none

Change 3115734 on 2016/09/07 by Alexis.Matte

	#jira UE-30166 Support fbx sdk 2017
	#rb none

Change 3115737 on 2016/09/07 by Nick.Darnell

	Adding an image comparer for screenshots.  Removing some content from EngineTest.

	#rb none

Change 3115743 on 2016/09/07 by Nick.Darnell

	Checkpointing a bunch of progress towards a screenshot comparison workflow that allows us to diff screenshots taken on various platforms and hardware.  Disabling many tests that are not passing.  Updating a few tests to log better errors, and fixed a few tests with easy bugs in them so they would start passing again.  All editor tests currently passing!

	#rb none

Change 3115748 on 2016/09/07 by Nick.Darnell

	Making the RuntimeTests plugin a Developer module, so that it doesn't get included in shipping builds.

	#rb none

Change 3115789 on 2016/09/07 by Jamie.Dale

	We now favor Traditional Chinese for Hong Kong and Macau

	#rb James.Hopkin

Change 3115799 on 2016/09/07 by Jamie.Dale

	Removed validity check on source cultures when remapping, as platforms may use invalid cultures that need to be remapped

	#rb James.Hopkin

Change 3115826 on 2016/09/07 by Nick.Darnell

	Adding missing files.

	#rb none

Change 3115838 on 2016/09/07 by Nick.Darnell

	Back out revision 6 from //UE4/Dev-Editor/Engine/Source/Runtime/UMG/Public/Components/WidgetInteractionComponent.h

	#rb none

Change 3116007 on 2016/09/07 by Alexis.Matte

	build fix
	#rb none

Change 3116057 on 2016/09/07 by Jamie.Dale

	Fixed widget snapshot messages so they appear in the message debugger

	#rb none

Change 3116112 on 2016/09/07 by Nick.Darnell

	Removing the FbxAutomationBuilder file that go recreated on a merge from main.

	#rb none

Change 3116365 on 2016/09/07 by Michael.Dupuis

	#jira UE-20765 Added missing class flag to test (CLASS_CONFIG) and change a bit how the checkout/make writable work.
	#codereview Matt.Kuhlenschmidt
	#rb Alexis.Matte

Change 3116622 on 2016/09/07 by Alexis.Matte

	#jira UE-35608 Use the same naming convention when trying to retrieve uv channel by name.
	#rb matt.kuhlenschmidt

Change 3116638 on 2016/09/07 by Jamie.Dale

	Ensured that manifests and archives don't try and load data that they can't parse

	#rb none

Change 3117397 on 2016/09/08 by Gareth.Martin

	Added rotate and blend support to the landscape mirror tool
	#jira UE-34829
	#rb Jack.Porter

Change 3117459 on 2016/09/08 by Gareth.Martin

	Fixed crash saving a hidden landscape level with an offset (cloned from 4.13.1)
	#jira UE-35301
	#rb Jack.Porter

Change 3117462 on 2016/09/08 by Gareth.Martin

	Fixed invisible landscape components and crashes when tessellation is enabled (cloned from 4.13.1)
	#jira UE-35494
	#rb Benn.Gallagher

Change 3117583 on 2016/09/08 by Nick.Darnell

	Continued work on automation support for screenshot comparison, stubbing in a commandlet that can be run after automation tests that would perform the diffing.  Need to finish rigging it up so that deltas and results can be dumped out somewhere and consumed by a tool to approve shots.

	#rb none

Change 3117595 on 2016/09/08 by Nick.Darnell

	Updating the build script for AutomatedTests, going to see if this works!

	#rb none

Change 3117808 on 2016/09/08 by Nick.Darnell

	Adding header includes for async.

	#rb none

Change 3117812 on 2016/09/08 by Matt.Kuhlenschmidt

	Partially taken from Pr 2381

	Fixed Array Properties to handle duplicates properly and fixed Material Parameter Collection duplicate Guid problem.

	#rb none

Change 3117851 on 2016/09/08 by Jamie.Dale

	Silenced some redundant P4 errors that could be generated when running a stat update on a file

	Some of the options produced errors when working with newly added files. These errors are now downgraded to infos like they are for the main stat command.

	#rb Ben.Marsh
	#codereview Thomas.Sarkanen

Change 3117853 on 2016/09/08 by Gareth.Martin

	Clean up landscape includes and PCH
	#rb steve.robb

Change 3117859 on 2016/09/08 by Alex.Delesky

	#jira UE-35321 - Minimized windows will no longer act like they are visible when determining what widgets are currently underneath the mouse.

	#rb Nick.Darnell

Change 3117997 on 2016/09/08 by Nick.Darnell

	Updating the automation tests build script to use Editor-Cmd

	#rb none

Change 3118005 on 2016/09/08 by Matt.Kuhlenschmidt

	Properly reference graph node on material expressions so they are not GC'd while an expression still uses them

	#jira UE-35362
	#rb none

Change 3118043 on 2016/09/08 by Alex.Delesky

	#jira UE-30649 - Removed unnecessary returns from UWidget API.

	PR #2377: fix widget bug. (Contributed by dorgonman)

	#rb none

Change 3118045 on 2016/09/08 by Matt.Kuhlenschmidt

	Guard against crash saving config during level editor shutdown

	#rb none
	#jira UE-35605

Change 3118074 on 2016/09/08 by Matt.Kuhlenschmidt

	PR #2783: Removed #pragme once from CPP files (Contributed by projectgheist)

	#rb none

Change 3118078 on 2016/09/08 by Michael.Dupuis

	#jira UE-32065 Removed the -windows that was added as a default option and add it simply if fullscreen is not specified
	#rb Alexis.Matte

Change 3118080 on 2016/09/08 by Michael.Dupuis

	#jira UE-31131 Do not show a contextual menu if the menu is empty
	#rb Alexis.Matte

Change 3118087 on 2016/09/08 by Matt.Kuhlenschmidt

	Constify this method

	#rb none

Change 3118166 on 2016/09/08 by Nick.Darnell

	Trying additional command options for the build machine for automation.

	#rb none

Change 3118222 on 2016/09/08 by Matt.Kuhlenschmidt

	Fix actor delete during mesh paint not working during undo

	#rb none
	#jira UE-35684

Change 3118298 on 2016/09/08 by Alexis.Matte

	#jira UE-35302 Export all LODs for static mesh when there is no force LOD
	#rb uriel.doyon

Change 3118325 on 2016/09/08 by Matt.Kuhlenschmidt

	Fixed reset to default not appearing for slate brushes

	#rb none
	#jira UE-34958

Change 3119321 on 2016/09/09 by Matt.Kuhlenschmidt

	Guard against crash with an invalid world trying to be opened from the content browser

	#rb none
	https://jira.ol.epicgames.net/browse/UE-35712

Change 3119433 on 2016/09/09 by Nick.Darnell

	Removing a hack added by Paragon that prevents applications from resizing in real time as the user drags the size of the window around.

	#rb Matt.Kuklenschmidt
	#jira UE-35789

Change 3119448 on 2016/09/09 by Alex.Delesky

	When simulating touch events using the mouse, clicking the mouse will no longer let a drag operation continue. This should also allow the finger that started a drag to continue dragging items until it is released from the surface.

	#rb Nick.Darnell

Change 3119522 on 2016/09/09 by Jamie.Dale

	Fixed FDetailCategoryImpl::ShouldBeExpanded not honoring bShouldBeInitiallyCollapsed when bRestoreExpansionState was true

	#rb Matt.Kuhlenschmidt

Change 3119528 on 2016/09/09 by Jamie.Dale

	Some UI re-work to the localization dashboard

	This makes a better use of the available space, and will make it easier to make some other planned changes in the future.

	#rb James.Hopkin

Change 3119861 on 2016/09/09 by Michael.Dupuis

	#jira UE-9284 Added the Play/Stop button on the thumbnail
	#rb Alexis.Matte

Change 3120027 on 2016/09/09 by Alexis.Matte

	incorporate some fixes from licensee for LOD group re-import workflow
	#jira UE-32268
	#rb uriel.doyon
	#codereview matt.kuhlenschmidt

Change 3120845 on 2016/09/12 by Gareth.Martin

	Fixed crash in landscape editor when "Early Z" is enabled (cloned from 4.13.1)
	#jira UE-35850
	#rb Allan.Bentham

Change 3120980 on 2016/09/12 by Nick.Darnell

	Adding a commandlet that is runnable for comparing screenshots.  Adding comparing and exporting capability to the screenshot manager.

	#rb none

Change 3120992 on 2016/09/12 by Alex.Delesky

	#jira UE-35575 - TScriptInterface UProperties now have asset picker support.

	#rb Matt.Kuhlenschmidt

Change 3121074 on 2016/09/12 by Michael.Dupuis

	#jira UE-30092
	Added path length in error message when typing
	Added display of current filepath lenght for cooking

	#rb Alexis.Matte

Change 3121113 on 2016/09/12 by Nick.Darnell

	Adding some placeholder examples to show people how to author tests in EngineTest.

	#rb none

Change 3121152 on 2016/09/12 by Gareth.Martin

	Added TElementType, TIsContiguousContainer traits
	Added GetData(), GetNum() generic functions
	#rb Steve.Robb

Change 3121702 on 2016/09/12 by Jamie.Dale

	Optimized a loop over a sorted list to instead use a binary search

	This speeds up the short-lived allocation view generation.

	We also now dump the exception information to the Trace log when in a non-debug build.

	#rb James.Hopkin

Change 3121721 on 2016/09/12 by Jamie.Dale

	We now set the window mode first when resizing the game viewport to ensure that the work area is correct

	Fullscreen windows can affect the available work area size, which can break centering when moving between fullscreen and windowed mode.

	#jira UE-32842
	#rb Matt.Kuhlenschmidt

Change 3122578 on 2016/09/13 by Jamie.Dale

	Small code clean up

	Removed a use of the placement new style array addition.

	#rb none

Change 3122634 on 2016/09/13 by Jamie.Dale

	We now immediately update DefaultConfigCheckOutNeeded when checking out/making writable the config file, rather than wait for the text tick

	#jira UE-34865
	#rb James.Hopkin

Change 3122656 on 2016/09/13 by Jamie.Dale

	Fixed array combo button not focusing its contents, which prevented the menu closing correctly

	#jira UE-33667
	#rb none

Change 3122661 on 2016/09/13 by Nick.Darnell

	Checkpointing additional work on the screenshot compare dialog, moving some Directory path picker widget into a more common area.  Moving some "Find the best top level window handle for this widget for dialogs' code out of the main frame module and into Slate Application where it probably belongs.

	#rb none

Change 3122678 on 2016/09/13 by Jamie.Dale

	Fixing CIS error on Clang

	CoreUObject needs to be included before USTRUCT can be used.

	#rb none

Change 3122686 on 2016/09/13 by Jamie.Dale

	Fixing CIS error on Clang

	CoreUObject needs to be included before UCLASS can be used.

	#rb none

Change 3122728 on 2016/09/13 by Nick.Darnell

	UMG - Exposing a trace channel for the WIC, defaults to Visibility.  Improving how the WIC handles the cursor moving off the widget, it now maintains the last hit location rather than 0,0 which would cause things like dragged Sliders to reset to the left.  Ideally - the WIC would know the underlying widget has capture and continue to fake collision against an imaginary plane to simulate a continuous surface.

	#jira UE-35167
	#rb none

Change 3122775 on 2016/09/13 by Nick.Darnell

	Automation - Fixing an error with the ScreenshotTools plugin, needed to add an the include for Engine.h to the PCH.

	#rb none

Change 3122779 on 2016/09/13 by Nick.Darnell

	Widgetnimation - Exposing more of the class to C++.

	#rb none

Change 3122793 on 2016/09/13 by Nick.Darnell

	Fixing a crash in UWidgetComponent::UpdateRenderTarget updating a null material instance.

	#jira UE-35796
	#rb none

Change 3122834 on 2016/09/13 by Matt.Kuhlenschmidt

	Fixed crash undoing moves after bsp creation

	https://jira.ol.epicgames.net/browse/UE-35880

	#rb none

Change 3122835 on 2016/09/13 by Nick.Darnell

	Reverting changes to WIdgetAnimation

	#rb none

Change 3122897 on 2016/09/13 by Matt.Kuhlenschmidt

	Fixed non-editor compile error
	#rb none

Change 3122988 on 2016/09/13 by Alexis.Matte

	Material workflow refactor
	#jira UETOOL-774
	#rb matt.kuhlenschmidt

Change 3123006 on 2016/09/13 by Jamie.Dale

	Fixed dynamic collections not returning anything

	#jira UE-35869
	#rb James.Hopkin

Change 3123145 on 2016/09/13 by Alexis.Matte

	Fix fbx automation test. The test found a regression cause by CL: 3120027. In the case where we dont have a LODGroup we dont want to add LODs before the build.
	#jira UE-32268
	#rb none
	#codereview matt.kuhlenschmidt

Change 3123148 on 2016/09/13 by Matt.Kuhlenschmidt

	Fix fortnite compile error

	#rb alexis.matte

Change 3123208 on 2016/09/13 by Jamie.Dale

	The 'find culprit' dialog now honors the user choice

	#rb RichTW

Change 3123545 on 2016/09/13 by Nick.Darnell

	Slate - Adjusting the window dialog host finding code to do a better job of searching for slate windows and excluding popups and non-regular windows.

	#rb none

Change 3124494 on 2016/09/14 by Jamie.Dale

	Added ~ to the list of invalid characters for object/package names

	#jira UE-12908
	#rb Matt.Kuhlenschmidt

Change 3124513 on 2016/09/14 by Gareth.Martin

	Implemented filter to allow painting foliage on other foliage
	- Altered foliage filters so it will no longer paint on object types which don't have a filter, e.g. skeletal meshes
	#rb Allan.Bentham
	#2472

Change 3124523 on 2016/09/14 by Jamie.Dale

	PR #2724: Fix ScrollBox right mouse/touch grab scrolling functionality (Contributed by aarmbruster)

	#jira UE-34811
	#jira UE-32082
	#rb none

Change 3124607 on 2016/09/14 by Nick.Darnell

	UMG - Adding BoundsScale support to the WidgetComponent's CalcBounds function.

	#jira UE-35667
	#rb none

Change 3124785 on 2016/09/14 by Gareth.Martin

	Made some foliage functions editor-only to fix non-editor build
	#rb none

Change 3124795 on 2016/09/14 by Gareth.Martin

	Saved/loaded the new foliage filter
	#rb Allan.Bentham
	#2472

Change 3124915 on 2016/09/14 by Michael.Dupuis

	#jira UE-19511
	Add support for Add to source control on DefaultEditorPerProjectUserSettings file
	Remove CheckoutNotice when not editing a DefaultXXXX.ini file
	Edit proper config file either we're modifying settings from a Default file or Local user file
	#codereview Matt.Kuhlenschmidt Max.Preussner
	#rb Alexis.Matte

Change 3125266 on 2016/09/14 by Jamie.Dale

	Fixed ULocalizationTarget::DeleteFiles not deleting cultures, and using SCC wrong

	#rb none

Change 3125385 on 2016/09/14 by Matt.Kuhlenschmidt

	Fix crash when using SaveAs to save over top of an existing level

	#rb none
	https://jira.ol.epicgames.net/browse/UE-35919
	https://jira.ol.epicgames.net/browse/UE-35921

Change 3125487 on 2016/09/14 by Alexis.Matte

	Fix cook content, regression induce by the material workflow refactor
	#rb matt.kuhlenschmidt

Change 3126217 on 2016/09/15 by Gareth.Martin

	Unset bHasPerInstanceHitProxies on landscape grass components, as they don't have individually editable instances
	#rb Allan.Bentham

Change 3126311 on 2016/09/15 by Jamie.Dale

	Placement mode fixes

	 - The display name is now cached correctly on construction, and the FPlaceableItem instance used with SPlacementAssetEntry is now const.
	 - Ensured that the ID used by FPlaceableItem could never overflow.
	 - Fixed some types being missing from the "All Classes" list.
	 - Fixed the escape key not cancelling the search.

	#jira UE-35972
	#rb James.Hopkin

Change 3126325 on 2016/09/15 by Jamie.Dale

	Made sure that UWorld::GetAssetRegistryTags called its Super function so that properties tagged as AssetRegistrySearchable will be added.

	#rb Andrew.Rodham

Change 3126403 on 2016/09/15 by Gareth.Martin

	Added Find and Contains functions to TBitArray
	#rb Steve.Robb

Change 3126405 on 2016/09/15 by Gareth.Martin

	Allowed instances of Hierarchical Instanced Mesh Components to be moved around with the transform widget in the blueprint editor
	- Just like regular instanced mesh components!
	Also fixed not being able to move instances of an instanced mesh component when it is the root component
	Also also fixed Hierarchical Instanced Mesh Components not flushing their async tree build on saving (this was causing log spam from PostLoad when dragging instances around as the blueprint would constantly reinstance the component before the async tree build had finished)
	#jira UE-29357
	#rb Allan.Bentham

Change 3126444 on 2016/09/15 by Jamie.Dale

	Fixed the loc dashboard configs not working with SCC

	This isn't a great solution, but the whole way the loc dashboard manages its config data is in need of an overhaul.

	#rb none

Change 3126446 on 2016/09/15 by Jamie.Dale

	Fixed loc dashboard game and engine targets sharing the same expansion settting

	#rb none

Change 3126555 on 2016/09/15 by Chris.Wood

	Removed WER from Windows crash handling. Crashes saved to log folder and passed to CRC with explicit path.
	[UE-34470] - Investigate WER settings and if they can conflict with CRC on Windows

	#rb Steve.Robb

Change 3126586 on 2016/09/15 by Gareth.Martin

	Fixed missing landscape components when using a LODBias (cloned from 4.13.1)
	#jira UE-35873
	#rb Jack.Porter

Change 3126610 on 2016/09/15 by Jamie.Dale

	Stopped PS4 from always staging all ICU data files

	#rb Marcus.Wassmer

Change 3126779 on 2016/09/15 by Michael.Dupuis

	#jira UE-32914 Improve the help text to provide usage examples and params
	#rb Alexis.Matte

Change 3126849 on 2016/09/15 by Matt.Kuhlenschmidt

	Fix font material and outline font material not being animatable in sequencer

	#rb frank.fella

Change 3126858 on 2016/09/15 by Matt.Kuhlenschmidt

	File not saved
	#rb none

Change 3127001 on 2016/09/15 by Matt.Kuhlenschmidt

	Fixed reset to default state still not appearing in all cases after changing a property.

	#rb none

Change 3127038 on 2016/09/15 by Nick.Darnell

	UMG - Improving focus setting for users on widgets.  If we're unable to set the focus immediately, possibly because the user is setting focus in the Construct callback before the widget is in the tree, we now update the SlateOperations FReply on LocalPlayer to set focus next frame when it's more likely the widget will become focusable.

	#rb none

Change 3127061 on 2016/09/15 by Nick.Darnell

	Slate - We now have a reentrancy guard in TPanelChildren to avoid the broad cases where users might attempt to remove children while all children are being removed.  Which is an easy case to engineer if you've got widgets spawning children managed by another widget, that all go away at the same time, thus causing the parent to attempt to cleanup children.  The end result is a delete while deleting.  So now TPanelChildren prevents adds/removes while emptying the list of children.

	#jira UE-35726
	#rb Matt.Kuchlenschmidt

Change 3127205 on 2016/09/15 by Alex.Delesky

	#jira UE-18013 - Users can now add Textures, Materials, or Sprites to a Widget Blueprint directly from the content browser. This also fixes a few issues with adding Widget Blueprints to another Widget BP from the content browser, such as adding a widget to itself or creating a circular dependency.

	#rb Nick.Darnell

Change 3127971 on 2016/09/16 by Matt.Kuhlenschmidt

	Fix crash in scene outliner if actors become invalid

	#rb none

	https://jira.ol.epicgames.net/browse/UE-35932

Change 3128011 on 2016/09/16 by Matt.Kuhlenschmidt

	Added guards for crashes accessing slate resources for deleted uobjects

	#rb nick.darnell

Change 3128067 on 2016/09/16 by Michael.Dupuis

	#jira UE-34158 Add an option to auto expand advanced details
	#rb Alexis.Matte

Change 3128073 on 2016/09/16 by Michael.Dupuis

	#jira UE-1145
	Set Save As to Ctrl + Alt + S
	Set Save All to Ctrl + Shift + S
	Set Save Current to Ctrl + S

	#rb Alexis.Matte

Change 3128117 on 2016/09/16 by Jamie.Dale

	Updated the pin-type filter combo to filter on both the localized and source type descriptions

	#jira UE-36081
	#rb none

Change 3128177 on 2016/09/16 by Alexis.Matte

	#jira UE-35946 Remove unnecessary GetReadValue call with bad parameter. The read value call is cache so subsequent call was returning the bad cache value.

	#rb michael.dupuis
	#codereview matt.kuhlenschmidt

Change 3128387 on 2016/09/16 by Gareth.Martin

	Fixed location and rotation of arrow widget in the landscape mirror tool when using one of the new "Rotate" modes
	#jira UE-36093
	#rb none

Change 3128445 on 2016/09/16 by Matt.Kuhlenschmidt

	Guard against scene outliner crash.  Print out tree when items appear twice.
	https://jira.ol.epicgames.net/browse/UE-35935

	#rb none

Change 3128454 on 2016/09/16 by Matt.Kuhlenschmidt

	Remove category for WindowTitleBarArea.  It is very custom for internal use and should not be a top level widget

	#rb none

Change 3128482 on 2016/09/16 by Michael.Dupuis

	Added new key binding for generic Save, Save As
	Added new key binding for Save All for the content browser

	#rb Alexis.Matte (approved by MattK)

Change 3128560 on 2016/09/16 by Matt.Kuhlenschmidt

	Fix build warning

	#codereview nick.darnell
	#rb none

Change 3128642 on 2016/09/16 by Alexis.Matte

	#jira UE-36047 We now convert the light color correctly when importing and exporting fbx files. UE4 is sRGB and FBX is linear
	#rb none
	#codereview matt.kuhlenschmidt

Change 3128733 on 2016/09/16 by Nick.Darnell

	UMG - Fixing a bad merge, some code was removed causing all BindWidget statements to fail to compile correctly.

	#jira UE-36105
	#rb none

Change 3128768 on 2016/09/16 by Matt.Kuhlenschmidt

	Fix selection outline showing around edges of all internal mesh sections of a component instead of around the entire actor

	#rb none

Change 3128779 on 2016/09/16 by Matt.Kuhlenschmidt

	Fix offset characters on some small fonts

	#rb none

Change 3130057 on 2016/09/19 by Jamie.Dale

	Fixing volatility and invalidation issues for text widgets

	#jira UE-33988
	#rb Nick.Darnell

Change 3130064 on 2016/09/19 by Jamie.Dale

	Changed mprof meta-data to allow unicode strings and updated ReadString to deal with them correctly

	#rb James.Hopkin

Change 3130233 on 2016/09/19 by Michael.Dupuis

	#jira UE-32914 Added missing args that the UI supported
	#rb Alexis.Matte

Change 3130265 on 2016/09/19 by Nick.Darnell

	Automation - Cleaning up some API items.

	#rb none

Change 3130378 on 2016/09/19 by Matt.Kuhlenschmidt

	Fix reentrancy saving assets while a prompt for checkout dialog is open

	#rb none

Change 3130398 on 2016/09/19 by Jamie.Dale

	Fixing UHT error when building

	#rb none

Change 3132101 on 2016/09/20 by Nick.Darnell

	UMG - Adding a toolbar option in the designer for the 'G' command, similar to 'Game View' in the level editor, it disables all the dashed lines / future editor visuals.

	#rb none

Change 3132110 on 2016/09/20 by Nick.Darnell

	PR #2792: ShowFlags for WidgetComponents (Contributed by projectgheist)

	#jira UE-13770

	#rb Nick.Darnell

Change 3132111 on 2016/09/20 by Nick.Darnell

	UMG - The retainer now embeds a virtual window into the focus path so that paths are resolved correctly.

	#rb none

Change 3132138 on 2016/09/20 by Michael.Dupuis

	#jira UE-30945 Added missing PostEditComponentMove after drag is finished
	#rb Alexis.Matte

Change 3132147 on 2016/09/20 by Michael.Dupuis

	#jira UE-30866 Fixed the filter to work properly
	#rb Alexis.Matte

Change 3132190 on 2016/09/20 by Matt.Kuhlenschmidt

	Fix static analysis warnings in this file

	#rb none

Change 3132231 on 2016/09/20 by Nick.Darnell

	Slate - Updating the material blend states to match what is expected of Slate rendering, which differs a lot from the scene renderer with the way it treats alpha.  This fixes translucent rendering with the retainer widget, users will need to set their materials to Alpha Composite though for it to behave as expected.

	#jira UE-33285
	#rb none

Change 3132255 on 2016/09/20 by Alex.Delesky

	#jira UE-36048 - TMap and TSet properties are now disallowed from adding more children through the Details panel when they contain the dfault value for a key or element. Reset to Default is also no longer allowed on a Map or Set child when it will result in a second default value existing within the container.

	#rb Matt.Kuhlenschmidt

Change 3132587 on 2016/09/20 by Mike.Fricker

	MIDI Plugin: Fixed a CIS error in shipping configuration (introduced in CL 3108604)
	#rb none
	#lockdown matt.kuhlenschmidt

Change 3132623 on 2016/09/20 by Matt.Kuhlenschmidt

	Fix crash opening the cooker settings

	https://jira.it.epicgames.net/browse/UE-36197

	#rb none
	#lockdown nick.darnell

Change 3133144 on 2016/09/20 by Nick.Darnell

	Build configuration for automation tests.

	#rb none
	#lockdown matt.kuhlenschmidt

Change 3133206 on 2016/09/20 by Matt.Kuhlenschmidt

	Fix default material on odin text

	#rb none
	#lockdown nick.darnell

Change 3133913 on 2016/09/21 by Nick.Darnell

	Back out revision 17 from //UE4/Dev-Editor/Engine/Source/Runtime/UMG/Private/Slate/SRetainerWidget.cpp

	#rb none
	#jira UE-36231
	#lockdown matt.kuhlenschmidt

[CL 3133983 by Matt Kuhlenschmidt in Main branch]
2016-09-21 10:07:18 -04:00
Matt Kuhlenschmidt
1da24c4701 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3050373)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2973846 on 2016/05/11 by Jamie.Dale

	Exposed FConfigValue::ExpandValue and added FConfigValue::CollapseValue

	These are both static and can be used to expand or collapse the macros used in our config files (mostly when dealing with paths), in code that has to deal with the config system, but isn't internal to the config system (mostly things that deal with default configs outside of UObjects).

	The old non-static version of FConfigValue::ExpandValue is now FConfigValue::ExpandValueInternal, which just calls FConfigValue::ExpandValue on SavedValue and ExpandedValue.

	This also changes some code that was using FString.Replace to use FString.ReplaceInline. This reduces allocations, and also allows us to avoid another string comparison to see whether the strings are identical (as ReplaceInline returns the number of replacements that were made).

Change 2973847 on 2016/05/11 by Jamie.Dale

	Changing the loading phase in the localization dashboard now writes to the default config

	#jira UE-30482

Change 2973866 on 2016/05/11 by Jamie.Dale

	Deprecated some functions that were taking an unused position.

	These unused parameters caused confusion and lead to UE-30276. The old versions have been deprecated, and new versions without those parameters have been added. Existing code has been updated to call the non-deprecated version.

	- FViewportFrame::ResizeFrame
	- FSceneViewport::ResizeFrame
	- FSceneViewport::ResizeViewport

Change 2974505 on 2016/05/11 by Nick.Darnell

	PR #2309: Added Combobox styling (Contributed by Chris528)

Change 2975241 on 2016/05/12 by Richard.TalbotWatkin

	Made sRGB Preview the default in the Color Picker.

Change 2975390 on 2016/05/12 by Jamie.Dale

	Made sure that en-US-POSIX is in our list of available cultures

	Some people use machine tags as their native text, so they need an invariant machine like culture to use as their native culture. en-US-POSIX is perfect for this.

Change 2975411 on 2016/05/12 by Jamie.Dale

	PR #2237: Fixed formatting of Error_TooManyMaterials message (Contributed by pfranz)

Change 2975559 on 2016/05/12 by Jamie.Dale

	Dialogue Wave VO direction can now be localized

	This is gathered as editor-only data.

	#jira UE-28715

Change 2975710 on 2016/05/12 by Jamie.Dale

	Implemented UObject::IsLocalizedResource to test whether the object belongs to a localized package

Change 2975728 on 2016/05/12 by Jamie.Dale

	Exported dialogue scripts now include a column that says whether they have a localized recording of that line of dialogue

	#jira UETOOL-794

Change 2975763 on 2016/05/12 by Jamie.Dale

	We no longer warn if asked to check out a UNC path when running the GatherText commandlets

	#jira UE-25833

Change 2975766 on 2016/05/12 by Jamie.Dale

	Resolved some loc key conflicts

	#jira UE-25833

Change 2975774 on 2016/05/12 by Jamie.Dale

	PO files now only contain a single entry in the case of a native translation being exported

	They used to contain the original entry, as well as an entry for the native translation, however the original entry would never be used.

	This change also cleans up some directory walking code that was looking for archive files, and replaces it with code to load the specific archive file.

Change 2975776 on 2016/05/12 by Jamie.Dale

	Downgraded a PO file import warning that isn't really an issue

	#jira UE-25833

Change 2976675 on 2016/05/13 by Jamie.Dale

	Fixed some more fallout from changes to use the window position when changing the game viewport mode

	- FSceneViewport::ResizeFrame:
	  - Fixed the HMD monitor info setting the wrong variables.
	  - Fixed SetWindowMode and ResizeViewport potentially being passed two different modes.
	  - We now only move the window if we need to (this avoids issues with WindowedFullscreen window positioning).

	- FWindowsWindow::MoveWindowTo:
	  - Now treats the screen space position it's given as relative to the top-left of the window, rather than the top-left of the windows' client area.

	- FWindowsApplication:
	  - WM_MOVE was passing a screen space position relative to the top-left of the windows' client area, rather than its window area like Slate expected.

	#jira UE-30276
	#jira UE-30677

Change 2976804 on 2016/05/13 by Jamie.Dale

	Slight optimization to FICUInternationalization::FindOrMakeCulture to avoid hitting the filesystem until we know we need to

Change 2976967 on 2016/05/13 by Alexis.Matte

	#jira UE-30687 Cannot import a skeletal mesh scale to zero

Change 2977042 on 2016/05/13 by Alexis.Matte

	#jira UE-29952 log a warning if fbx exceed the maximum number of LOD.

	#2326 Github PR

	#code review matt.kuhlenschmidt

Change 2977074 on 2016/05/13 by Jamie.Dale

	Follow up to CL# 2976804 to avoid a potential change in behavior

Change 2977076 on 2016/05/13 by Jamie.Dale

	Some tidy up and optimization to SCulturePicker

Change 2977327 on 2016/05/13 by Alex.Delesky

	Now deleting the Redirector package on Redirector Fix Up rather than simply removing it from the Content Browser.

	#jira UE-30423

Change 2977499 on 2016/05/13 by Alexis.Matte

	#jira UE-29475
	Enable UStruct child property to be favorite

Change 2978415 on 2016/05/16 by Jamie.Dale

	We now pre-load all the culture data when starting the editor to avoid a UI hitch later

Change 2978517 on 2016/05/16 by Alex.Delesky

	#jira UE-29406

	Creating a static mesh from a geometry brush and then attempting to reimport the mesh will no longer crash the editor.

Change 2978518 on 2016/05/16 by Alex.Delesky

	#jira UE-28210

	The FBX Importer no longer runs cleanup upon failing to import an FBX file and won't crash the engine the next time an FBX is imported within the same editor session.

Change 2978556 on 2016/05/16 by Alexis.Matte

	Fbx tests automation
	#jira UE-29635

Change 2978797 on 2016/05/16 by Alexis.Matte

	#jira UE-30774
	- prevent baking the pivot if we transform the vertex with the absolute transform.
	- Also make sure we set the identity for the Max puivot in case we dont bake the pivot and we dont transform the vertex with the absolute transform.

	#code review matt.kuhlenschmidt

Change 2978965 on 2016/05/16 by Alexis.Matte

	FBX importer, fix the socket rotation.
	#jira UE-30094

Change 2980613 on 2016/05/17 by Jamie.Dale

	Moved the XLOC UAT localization provider to be publicly accessible

Change 2980614 on 2016/05/17 by Jamie.Dale

	Reference update for project move

Change 2980633 on 2016/05/17 by Jamie.Dale

	Made the culture mapping used between XLOC and UE4 configurable on a per-project basis

	You can now override GetEpicCultureToXLocLanguageId in your custom localization provider in order to change the default mappings.

Change 2980836 on 2016/05/17 by Jamie.Dale

	Added -LocalizationSteps flag to allow you to only run a subset of the UAT "Localise" command

	You can pass any of the following steps: Download, Gather, Import, Export, Compile, GenerateReports, Upload

Change 2982700 on 2016/05/18 by Jamie.Dale

	Fixed the loc package gather potentially adding the same source location multiple times

Change 2983906 on 2016/05/19 by Jamie.Dale

	Slight cleanup of the way we register localization gatherer callbacks

Change 2984356 on 2016/05/19 by Chris.Wood

	Removed temporary analytics API change needed for earlier hot fix
	[UE-31005] - Undo temp Hardware Survey API change from 4.10 - CL 2782817

Change 2986679 on 2016/05/23 by Alex.Delesky

	#jira UE-24747 - Importing FBX files that contain meshes that do not have non-degenerate triangles will no longer crash the editor on import, and will warn the user that the meshes are bad.

Change 2986798 on 2016/05/23 by Alex.Delesky

	#jira UE-31136 - Chord Input fields will no longer display the blinking edit cursor if they do not have focus.

Change 2987106 on 2016/05/23 by Alexis.Matte

	Fbx importer, fail import must not create a package in the content browser
	#jira UE-31154

Change 2987563 on 2016/05/23 by Alex.Delesky

	#jira UE-30988 - Changed the default window mode when launching a game from the .uproject file to Windowed

Change 2987564 on 2016/05/23 by Alex.Delesky

	#jira UE-28856 - Fixed a crash that could potentially occur when starting up PIE while dragging objects like widgets in the editor.

Change 2988321 on 2016/05/24 by Jamie.Dale

	Added a way to backup and restore the selection state of a level (its actors and components) in a way that can be reapplied even if the level is reloaded

Change 2988708 on 2016/05/24 by Jamie.Dale

	Fix for crash when missing the fallback/last resort font

Change 2988782 on 2016/05/24 by Jamie.Dale

	Added the ability to version each localized string individually when loaded into the localization manager

	The single 32-bit global history has now been replaced with two 16-bit histories. One is global, and is updated whenever the culture is changed (or a LocRes file is loaded), and the other is local to each string, and is updated if the display string is changed outside of a culture update (to handle cases where the display string is changed, but the key is preserved). Changing the global history will reset all local histories.

	Because of the change from an int32 to a uint16, 0, rather than INDEX_NONE, is now considered the "unset" value for a history.

Change 2988856 on 2016/05/24 by Jamie.Dale

	Added a way to get the package(s) of the object(s) being edited by a property panel

	Typically the package is just the outermost of the object being edited, however there are some cases where this may not be the case:
	  - UMG widgets edit a transient copy of the real data, so we use the SetObjectPackageOverrides to override the package these objects should use to be the real asset package.
	  - Structs (UDS, Data Table, etc) don't have a way to get to their package, so you have to specify it on their FStructOnScope instance (see FStructOnScope::GetPackage and FStructOnScope::SetPackage). This has been hooked up for the UDS and Data Table editors.

Change 2988955 on 2016/05/24 by Alex.Delesky

	#jira UE-30645 - Adding in support for splash images to support .png and .jpg files. In general, this adds multi-extension support for external image references and external image picker modules.

	Git Request #2376

Change 2989418 on 2016/05/25 by Jamie.Dale

	Added a way to count text references within a package that match the given search criteria

	This can be used to detect whether a localization ID is unique within its package.

	The following search modes are available:
	  - MatchId: Detect a reference if it matches the given ID (ignoring the source text)
	  - MatchSource: Detect a reference if it matches the given ID and source string
	  - MismatchSource: Detect a reference if it matches the given ID but has a different source string

Change 2989436 on 2016/05/25 by Jamie.Dale

	Added "root-level" meta-data (meta-data associated with the package rather than an object within it)

Change 2989471 on 2016/05/25 by Alexis.Matte

	Fbx scene importer, fix naming clash when creating package we now also look in memory to find existing package not just on disk

Change 2989639 on 2016/05/25 by Jamie.Dale

	Added static version of FName::IsValidXName

	This allows you to verify name-like strings without having to convert them to an FName (and thus add them to the name table)

Change 2989716 on 2016/05/25 by Alex.Delesky

	#jira UE-30828 - The Standalone Session Frontend will now render the names of automation tests correctly instead of as solid white blocks.

Change 2990100 on 2016/05/25 by Alexis.Matte

	Fix crash when reimporting a mesh that originaly exceed the maximum number of LOD

	#jira UE-30907

Change 2991442 on 2016/05/26 by Bob.Tellez

	#UE4 Fix components in world not rendering when saved without a physics scene.

Change 2991736 on 2016/05/26 by Bob.Tellez

	#UE4 Fix duplicated worlds not being initialized when inactive. Re-enabled duplication of worlds in the content browser.

Change 2991942 on 2016/05/26 by Alex.Delesky

	#jira UE-31012 - Setting a Decimal Grid Interval value to 0 and using it will no longer crash the editor or cause an editor crash on startup.

Change 2991994 on 2016/05/26 by Alex.Delesky

	#jira UE-31177 - Attempting to export an entire level as an object file and choosing to export all materials as images will no longer crash the editor.

Change 2994037 on 2016/05/30 by Alexis.Matte

	Add Fbx Automation Tests
	- static mesh import reimport (sections and materials)
	- skeletal mesh import and reimport (sections and materials also bone position)
	- static/skeletal mesh LODs (import, add, reimport)
	- rigid mesh (import, reimport)

Change 2994253 on 2016/05/31 by Alexis.Matte

	Mikkt crash when computing the normals if there is more vertex then the number of wedge

	#jira UE-29143

Change 2994260 on 2016/05/31 by Alexis.Matte

	Make sure we cannot modify fbx test plan when json file is read only

Change 2994431 on 2016/05/31 by Alex.Delesky

	#jira UE-21900 - The scale widget should now render all axes when using an orthographic camera.

Change 2994432 on 2016/05/31 by Alex.Delesky

	#jira UE-31328 - New objects dragged into the scene will now comply with the Surface Snapping option in the viewport, and will not use the Surface Offset if snapping is disabled.

Change 2994537 on 2016/05/31 by Richard.TalbotWatkin

	Fixed potential crash in the Mesh Paint tool when non-transactable actors are in the SelectedActors list following a Redo.
	#jira UE-31172 - Crash related to Vertex Painting - MeshPaint!CastChecked<AActor,UObject>()

Change 2994983 on 2016/05/31 by Richard.TalbotWatkin

	Added some guard code to protect against a crash when editing geometry. Repro currently unknown, ensure was added in order to try to get more information.
	#jira UE-30820 - UT EDITOR: CRASH: Crash in Public Release CL#2973693

Change 2995022 on 2016/05/31 by Jamie.Dale

	PR #2428: Added missing END_OPTIMIZATION macro to SOutputLog (Contributed by MatzeOGH)

Change 2995027 on 2016/05/31 by Jamie.Dale

	PR #2409: fixed a small typo in GraphEditor.h (Contributed by MatzeOGH)

Change 2995963 on 2016/06/01 by Alex.Delesky

	#jira UE-31317 -  The transform gizmo will no longer block the placement of a material onto a mesh.

Change 2997002 on 2016/06/01 by Cody.Albert

	Fix to ensure ActiveTopLevelWindow is properly set after a window is destroyed

	#jira UE-31448

Change 2998013 on 2016/06/02 by Alexis.Matte

	Prevent static mesh materials array to grow when using the reset button in the staticmesh editor.

	#jira UE-12931

Change 2998370 on 2016/06/02 by Alexis.Matte

	Fbx Automation, add some import LOD test in case the options are not ok

Change 2999709 on 2016/06/03 by Jamie.Dale

	Fixed some issues with gathering text from BP bytecode

	Bytecode in Blueprints is very volatile, and can only be safely gathered after it's been compiled (which is not guaranteed to have happened by the time we save the package). This change avoids caching any assets that contain scripts (non-data-only Blueprints), and instead will always load them to perform a gather (which will ensure the Blueprint bytecode is up-to-date due to compile-on-load).

Change 2999755 on 2016/06/03 by Richard.TalbotWatkin

	Fixes to Spline Mesh collision generation.
	- Fixed a serious issue with DDC ID generation, in that the static mesh wasn't forming a part of the key, hence any two spline meshes with identical properties but different meshes would yield the same cache entry.
	- Fixed how different collision boxes are transformed when rebuilding physics meshes. Convex collision transforms are now correctly taken into account, and spherical and capsule collision now gets correctly translated when a scale is applied to the start or end of the spline mesh.
	- Optimized physics rebuilding.  A new BodySetup object is now only created when needed, otherwise it is reused.

	#jira UE-31361 - Splines handle box collision and collision from other shapes differently

Change 2999973 on 2016/06/03 by Jamie.Dale

	We now skip bulk data when detecting text references

	#jira UE-31596

Change 3000159 on 2016/06/03 by Alex.Delesky

	#jira UE-30244 - Added a safeguard against a potential crash when editing BSP brushes before placing another BSP brush into the level.

Change 3001814 on 2016/06/06 by Alexis.Matte

	Make sure the staticmesh Materials list dont grow when we reimport or override a LOD other then the base mesh.
	Add a fbx test to make sure the problem is flag by automation test

	#jira UE-1394

Change 3001820 on 2016/06/06 by Alex.Delesky

	#jira UE-19079 - Widget Blueprints should no longer crash when dragging widgets from one blueprint to a second and then compiling the second blueprint.

Change 3001915 on 2016/06/06 by Alexis.Matte

	Make sure we check attribute type before checking attribute unique ID in case of unique id clash.

	#jira UE-31214

Change 3002026 on 2016/06/06 by Alexis.Matte

	Importing morph target should not import textures like materials since the base mesh already import thoses.

	UDN Question:
	https://udn.unrealengine.com/questions/293973/does-importing-an-fbx-with-morph-targets-cause-a-m.html

Change 3002623 on 2016/06/06 by Jamie.Dale

	Fixing more loc conflicts

Change 3002883 on 2016/06/06 by Jamie.Dale

	Adding retry when dealing with OneSky

	This is attempting to compensate for some timeouts with OneSky, which were also noticed when testing UE-31413

Change 3003004 on 2016/06/06 by Trung.Le

	#jira UE-13101 - Make "Description" field for a BluePrint Function multiline

Change 3003859 on 2016/06/07 by Alexis.Matte

	#jira UE-30436 Refresh the property editor when a array element is added, remove, insert, delete and the property is favorite

Change 3004132 on 2016/06/07 by Jamie.Dale

	Fixed a hash conflict that could occur when both the case-sensitive and case-insensitive FName hashes were identical

	This resulted in the case-preserving FName being added to the head of the linked list for the bucket, which caused any subsequent name lookups to return that name index for the comparison index (since it matched an insensitive string comparison), rather than the name index of the first case-variant of that name that was added to the bucket.

	This change has new entries be inserted at the tail of the list, which ensures that enumeration for a case-insensitive name will always find the same entry in the bucket (the first one that was ever added) and will continue to compare correctly.

Change 3004286 on 2016/06/07 by Jamie.Dale

	Ensured that assignments that publish new names to the bucket are atomic

Change 3004310 on 2016/06/07 by Jamie.Dale

	Ensured FName internal hashes are returned as uint16

Change 3004381 on 2016/06/07 by Jamie.Dale

	FAsyncPackage now creates the meta-data before processing the remaining exports

	This matches the behavior of FLinkerLoad::LoadAllObjects, as other objects may depend on the meta-data being loaded before them.

Change 3004765 on 2016/06/07 by Alex.Delesky

	#jira UE-31498 - Material thumbnails will now render the full sphere rather than an extreme close-up of the material.

Change 3005754 on 2016/06/08 by Trung.Le

	Allow whitespace for meta class names
	#jira UE-31668

Change 3005755 on 2016/06/08 by Stephan.Jiang

	UMGSequencePlayer implements GetPlaybackContext() and return UserWidget->GetWorld() if it's valid

	#jira UE-31299

Change 3006512 on 2016/06/08 by Alex.Delesky

	#jira UE-31572 - The "All Classes" tab in the Modes panel will now refresh when a placeable asset is created, renamed, or deleted without needed to navigate away from the tab first.

Change 3006760 on 2016/06/08 by Jamie.Dale

	Added support for stable localization keys

	This feature adds support for preserving the existing key of an FText property when editing the source string, providing that it is the only reference to that string within the package. A side effect of this is that you're now able to specify custom keys for FText properties since we can now verify that the custom key won't cause an identity conflict.

	In order to limit the search domain for uniqueness to a single package, we've added the concept of a "localization namespace" to packages (stored in the meta-data). Each package is given a unique namespace, which is appended to the user-defined namespace of the text when it is modified, saved, or duplicated. This package namespace ensures that the same user-defined namespace and key may be used in different packages without causing an identity conflict.

	In order to access the package namespace within the Core code that hosts FText (which doesn't know about UPackage), FArchive now provides a GetLocalizationNamespace function to access the package namespace within the Core code, and a SetLocalizationNamespace function for CoreUObject and Engine code to pass down the package namespace from their packages.

	If you have an archive that handles duplicating objects into a different package, or duplicating packages themselves, then you'll want to make sure it's setting the package namespace correctly. FObjectReader and FObjectWriter have been updated to do this, and serve as a good example. FDuplicateDataReader (used by StaticDuplicateObject), and FCopyPropertiesArchiveObjectWriter (used when compiling Blueprints) have also been updated to set the package namespace, as they both handle copying objects between packages. TextNamespaceUtil provides a suite of functions for getting at (or setting) the namespace for a package.

	Keys will start to stabilize naturally over time once this feature is enabled, however the StabilizeLocalizationKeys commandlet may also be used to stabilize all the keys for a game at once. Running it for a game under source control would look something like this:
	  MyGame -run=StabilizeLocalizationKeys -IncludeGame -NativeCulture=en -EnableSCC

	This commandlet also updates your localization archives to use the new text identities, however you'll still need to run a localization gather and localization compile before the updated translations will be available for your game.

	Note: This feature is currently disabled via the USE_STABLE_LOCALIZATION_KEYS define. It will be enabled at a later date.

	#jira UETOOL-796

Change 3007501 on 2016/06/09 by Trung.Le

	#jira UE-31722
	Fix MaterialFunctions crash when editing text in Libraries Category Text field. Solution: Removed PredEdit and PostEdit from IEditableTextProperty, its derived types and other code that was calling them. The new SetText method already calls NotifyPreChange and NotifyPostChange to properly create/destroy ScopedTransaction.

Change 3007524 on 2016/06/09 by Jamie.Dale

	Added some additional checks to avoid re-keying text when duplicating for PIE

Change 3007564 on 2016/06/09 by Jamie.Dale

	PR #2401: DataTable import/export improvements (Contributed by bozaro)

Change 3007653 on 2016/06/09 by Jamie.Dale

	PR #2459: Generate JSON for nested structs in DataTable rows (Contributed by jorgenpt)

Change 3008019 on 2016/06/09 by Jamie.Dale

	Updated structs to export as JSON when displaying them in the Data Table editor

	This produces much cleaner results than using the text export method (which will use the internal names for user defined structs).

	This also cleans up the FDataTableExporterCSV and FDataTableExporterJSON APIs so that you don't need to pass in a UDataTable if you're not going to use it.

	#jira UE-29958

Change 3008052 on 2016/06/09 by Jamie.Dale

	Fixed bug importing an array inside a JSON Data Table

	This was noticed when testing a GitHub PR, but the JSON importer for a Data Table was appending the new data to the array rather than replacing it. It now clears the array prior to importing.

Change 3008875 on 2016/06/10 by Jamie.Dale

	PR #2406: Git plugin: Fix for Git diff not working in UE 4.12 (and master) (Contributed by SRombauts)

Change 3008879 on 2016/06/10 by Jamie.Dale

	PR #2484: Git Plugin: fix the Submit To Source Control menu broken by new "migrate" support in 4.12 (and master) (Contributed by SRombauts)

Change 3008990 on 2016/06/10 by Alex.Delesky

	#jira UE-15699 - Submitting to source control via the editor should now check for current asset status before prompting the user to submit their changes. This should prevent files that had been previously deleted from being readded to source.

Change 3008991 on 2016/06/10 by Alex.Delesky

	#jira UE-31688 - The Output Log will now automatically anchor to the bottom of the scroll bar when the user scrolls all the way down using the mouse wheel or clicking and dragging the content window.

Change 3010856 on 2016/06/13 by Alexis.Matte

	#jira UE-31713 Fix a serialize issue for skeletal mesh with apex cloth.

Change 3011736 on 2016/06/13 by Jamie.Dale

	Adding missing plurals.res file

	This is needed to get plural form information from ICU.

	#jira UETOOL-875

Change 3012387 on 2016/06/14 by Richard.TalbotWatkin

	Disabled the Paste context menu action if the property is marked as EditConst.
	#jira UE-27469 - User is able to paste values into a read-only setting

Change 3012971 on 2016/06/14 by Stephan.Jiang

	Editor Preferences->Widget Designer now have two options to toggle the visibilities of widgets created from Engine content folder and Developers folder.

	By default, visibility for engine content is off and developers is on

	#jira UE-31657

Change 3013111 on 2016/06/14 by Jamie.Dale

	Unified the number, percentage, and currency formatting between the ICU and Legacy text implementations

	Removed all the old legacy number formatting code, and removed the calls to the ICU specific number formatting. Everything is now using FastDecimalFormat as this will allow some optimizations later when formatting numbers in FText::Format.

Change 3015438 on 2016/06/15 by Cody.Albert

	Fixing ScrollBy function to calculate new scroll offset based on the current scroll offset and not the current desired scroll offset (which may not be the same during an animation)

	#jira UE-32082

Change 3016782 on 2016/06/16 by Richard.TalbotWatkin

	Corrected ConvexHull2D so that it returns an empty set of indices when passed an empty points array.

Change 3016949 on 2016/06/16 by Jamie.Dale

	Added FastDecimalFormat overloads to write into an existing string

	This helps avoid an extra allocation if you already have a pre-sized string that you're writing the number to (as is the case in FText::Format).

Change 3016952 on 2016/06/16 by Jamie.Dale

	Changed an Add for an Emplace to avoid moving a temporary

Change 3016954 on 2016/06/16 by Jamie.Dale

	Updated some FText code to avoid creating temporary objects just to move data through a hierarchy

	There was some code in FText and its internal types that were using pass-by-value as a marshaller to move data through a hierarchy. This resulted in temporary objects being created and destroyed to facilitate the movement of data.

	This change has all the internal FText code (private FText constructors, internal text data, and internal text history) take its movable types as an r-value reference. This avoids the temporary objects, but also makes it impossible to accidentally copy a construction argument when you meant to move it (you can still copy, but the copy must be explicit).

	In addition to this, FText::FromString and FText::AsCultureInvariant now have two overloads, const FString& and FString&&, to avoid them creating a temporary when you're invoking a move. FText::ChangeKey now takes its parameters by const& as their data wasn't being moved further down the chain, so the by-value copy was wasteful.

Change 3019021 on 2016/06/19 by Richard.TalbotWatkin

	When deleting a brush, ensure geometry is rebuilt before updating the details panel according to the selection change, so that the old Surface Properties don't continue to appear.
	#jira UE-8966 - Surface Properties of a BSP remain in the details panel after the BSP is deleted

Change 3019022 on 2016/06/19 by Richard.TalbotWatkin

	Fixed issue where the Surface Properties category in the Details panel doesn't appear after selecting a surface on a Brush which has just been placed.
	#jira UE-31916 - Selecting an edge of BSP geometry then a face does not show Surface Properties while in Place mode
	#jira UE-31915 - Selecting BSP face does not show Surface Properties in Details

Change 3019025 on 2016/06/19 by Richard.TalbotWatkin

	Fixed issue which was stopping 'Cancel' from correctly returning a 'Cancelled' result during P4 asynchronous ops.
	#jira UE-28595 - Submit to Source Control: "Checking for assets to check in..." cancel button does not cancel operation, editor becomes unresponsive

Change 3020050 on 2016/06/20 by Cody.Albert

	Changed window centering logic to correctly work when monitor 1 isn't set to primary monitor.

	#jira UE-32173

Change 3021145 on 2016/06/21 by Jamie.Dale

	Added support for text format argument modifiers

	These can be used to mutate a format argument before appending it to the resultant formatted string, and are applied to the preceding argument via a pipe, eg) "{Arg}|plural(one=is,other=are)".

	We provide a few of these by default:
	 - |plural(key=val,...)
	 - |ordinal(key=val,...)
	   Provides support for cardinal and ordinal plural forms, where key may be any of "one", "two", "few", "many", or "other", and val may be any optionally quoted string.
	 - |gender(masculine,feminine,[neuter])
	   Provides support for gender forms, where the 0th item is the masculine version, the 1st item is the feminine version, and the 2nd item is an optional neuter version. The values may be any optionally quoted string.
	 - |hpp(consonant,vowel)
	   Provides support for Hangul post-positions, where the 0th item is the consonant suffix, and the 1st item is the verb suffix. The values may be any optionally quoted string.

	Major changes:
	 - Exposed the ICU plural form handling via FCulture::GetPluralForm.
	 - Updated the FText formatting code to use an expression evaluator (to support the more complex expressions needed for the argument modifiers).
	 - Added FTextFormat to store a pre-compiled format expression. Re-using one of these if you're performing a lot of formats with the same FText will increase your performance (as around half of the FText::Format cost can be compilation, via an implicit construction of FTextFormat).
	 - Updated the FText::Format(...) family of functions to take their format string as FTextFormat, and take their arguments as FFormatArgumentValue. This allows us access to the real numeric types within the format code, but doesn't break the existing API as these types are implicitly constructible from the old parameters (FText).
	 - Converted text history to store their format string as an FTextFormat in-case they need to perform a re-format (this is still saved as an FText).

	Breaking changes:
	 - The rules for the escape token have been simplified, and there is an incredibly unlikely chance that this may affect some text:
	   - The ` character will now only escape a valid character (producing only the escaped character in the final string), or it will be ignored and inserted as a literal character, eg) "`{F" -> "{F", and "`F" -> "`F".
	   - Previously it would also remove the escape character when it followed { or }, eg) "{`" -> "{" and "}`" -> "}", rather than "{`" and "}`" like you might expect. It would also have previously removed a ` at the end of a string due to a parser bug.

Change 3021156 on 2016/06/21 by Jamie.Dale

	Updated LinuxToolChain to use the same output delegate for all of its actions when cross-compiling

	This avoids the compile and link actions being split into different batches.

Change 3021280 on 2016/06/21 by Richard.TalbotWatkin

	Fixed bug in parsing LOD in UStaticMeshComponent::ImportCustomProperties (thanks to Aurelien Cordonnier).
	#jira UE-31937 - UDN code submission for UStaticMeshComponent::ImportCustomProperties parsing bug

Change 3022949 on 2016/06/22 by Alex.Delesky

	#jira UE-31944 - Upgrading Subversion binaries to version 1.9.4.

Change 3023092 on 2016/06/22 by Jamie.Dale

	Downgraded some checks to ensures and added an early out

	#jira UE-32009

Change 3023154 on 2016/06/22 by Jamie.Dale

	Ported over CL# 3018771 to the UE automation

	This fixes an issue where a downloaded PO file smaller than the one already on disk leaving a mix of both files on disk (rather than the existing file on disk being truncated).

Change 3023579 on 2016/06/22 by Jamie.Dale

	Expanded the Blueprint FormatText node to support numeric and gender types

	These are needed to correctly support the new plural and gender forms that can be used in format strings, as these require actual numeric/enum data to be passed into the format arguments, rather than pre-formatted text.

	Major changes:
	 - The FormatText node for Blueprints now uses PC_Wildcard as its pin type for format arguments instead of PC_Text.
	   - Any existing literal text argument data in the pin is hoisted out into a "Make Literal Text" node which is then connected to the pin.
	 - FFormatArgumentData has been updated to be variant on the data needed by Blueprints. It's now a less comprehensive and non-unioned version of FFormatArgumentValue.
	 - The version of FText::Format taking FFormatArgumentData has been deprecated as its usage was internal to Blueprints and we have much better ways to format text in C++. Any existing C++ using that (of which we have none internally) should be updated to use FFormatArgumentValue instead.

Change 3023915 on 2016/06/22 by Jamie.Dale

	Cleaned up some of the UK2Node_FormatText expansion code to avoid unchecked literals

Change 3024813 on 2016/06/23 by Jamie.Dale

	Renamed FContext to FManifestContext to better reflect its purpose and avoid naming conflicts with other code

Change 3024852 on 2016/06/23 by Nick.Darnell

	FBX - Updating automation tests with the changes to chunk  and chunk index removal and them being merged with sections.

Change 3024994 on 2016/06/23 by Nick.Darnell

	UMG - Removing the DesignerWidgetTree, instead going to directly inject the widget tree into the partially constructed UUserWidget during design time, when refreshing the preview.  This avoids doing something a little dangerous and sketchy like updating the living class instance with a new designer tree that all new instances will begin biasing using.  Also making the preview widget explictly non-transactional as there's no reason to track changes to the preview, all the changes that need to be tracked should be on the template widget.  This should fix the crash in the widget designer when you Undo just after compiling the widget blueprint.

	#jira UE-31155

Change 3025194 on 2016/06/23 by Alex.Delesky

	#jira UE-31155 - Compilation error fix.

Change 3025255 on 2016/06/23 by Alex.Delesky

	#jira UE-21900 - Redoing changes done in CL 2994431 since it got stomped. Reinstates the grabber handles and ensures consistent scaling on the scale widget in orthographic viewports.

Change 3025460 on 2016/06/23 by Cody.Albert

	Fixed issue where widget components would misalign when aspect ratio was being constrained

	#jira UE-29637

Change 3025508 on 2016/06/23 by Cody.Albert

	Adding support for adjusting animation playback speed

	#jira UE-32222

Change 3026444 on 2016/06/24 by Jamie.Dale

	Fixed crash caused by bad access of shared this when closing an active IME context

	This was only needed to get the owner window, which we now cache when the IME context is created.

	#jira UE-32240

Change 3028358 on 2016/06/27 by Jamie.Dale

	Fixed IMEs not working due to no window being cached

	#jira UE-32240

Change 3028464 on 2016/06/27 by Alex.Delesky

	#jira UE-31873 - A single "Files need check-out" notification will now be shown instead of multiple notifications if multiple files need to be checked out, and updated as more files need to be checked out.

Change 3028524 on 2016/06/27 by Chris.Wood

	Switched off uploads to legacy Crash Report Receiver.
	[UE-31252] - Switch off deprecated CRR upload in Crash Report Client

	Also added CRC version string, added to crash context from CRC config

Change 3028840 on 2016/06/27 by Alexis.Matte

	#jira UE-32306 replace material bad name character by an underscore when doing a scen import.

Change 3028924 on 2016/06/27 by Alexis.Matte

	#jira UE-32125 Make sure we can add a plan when a fbx file is drop in the fbx automation test folder

Change 3029044 on 2016/06/27 by Alex.Delesky

	#jira UE-31944  - Updating SVN binaries for Mac to 1.9.4

Change 3029276 on 2016/06/27 by Alex.Delesky

	#jira UE-31531 - A user can now select the base class when creating a new physical material.

	PR #2462: added dialog, which enables picking base class for asset (Contributed by iniside)

Change 3029459 on 2016/06/27 by Alexis.Matte

	#jira UE-32354 Make sure we set all blueprint component to the correct mobility set in the scene import options.

Change 3030577 on 2016/06/28 by Nick.Darnell

	PR #2531: Git plugin: fix wrong status icons (Contributed by SRombauts)

Change 3030587 on 2016/06/28 by Alexis.Matte

	#jira UE-32251 add missing body setup variables when restoring the body setup value after a re-import of a staticmesh

Change 3030946 on 2016/06/28 by Alexis.Matte

	#jira UE-32515 prevent crash when re-import staticmesh userdata

Change 3031115 on 2016/06/28 by Jamie.Dale

	The DDC builder now gives the shader compile worker a chance to catch up when it pauses to run a GC pass

	This prevents an issue where the shader backlog could cause massive amounts of memory to be consumed.

Change 3031146 on 2016/06/28 by Jamie.Dale

	Fixed errors when building with USE_STABLE_LOCALIZATION_KEYS enabled caused by UEdGraphPin no longer being a UObject

Change 3031357 on 2016/06/28 by Nick.Darnell

	PR #2431: Add plugin support to the editor class wizard. (Contributed by Koderz)

Change 3031515 on 2016/06/28 by Jamie.Dale

	Fixed game targets not being able to depend on other game targets

Change 3031520 on 2016/06/28 by Jamie.Dale

	Localization compilation now specifies an ArchiveName to use

Change 3031671 on 2016/06/28 by Nick.Darnell

	Editor - Checking to see if a weak variable is valid before using it in the editor build window.

Change 3032013 on 2016/06/28 by Matt.Kuhlenschmidt

	Added ability to invert the Y axis in editor viewports for mouse look and orbit

Change 3032495 on 2016/06/29 by Jamie.Dale

	Fixed some measuring issues with bi-directional text within a right-flowed document

	There were three main issues:
	  1) Measuring blocks was measuring visual glyphs rather than logical glyphs (this caused bad measures/wrapping and overlapped rendering).
	  2) The text layout would consider blocks visually contiguous without making sure the block flow direction matched the line flow direction (this caused bad highlights).
	  3) The text layout would fail to compensate for a non-contiguous block that had a flow direction different to the line flow direction (it was hard-coded for RTL in LTR, so broke for LTR in RTL - this caused bad highlights).

	#jira UE-32526

Change 3032533 on 2016/06/29 by Nick.Darnell

	UMG - The widget component now extends from UMeshComponent, it can have a custom material applied to it, in order to achieve cooler effects - like ignoring the depth buffer.  Users who use this option are encouraged to start with the widget components default material and work from there.  The widget component now offers the ability to automatically size the render target to be the desired size of the widget - note that this can go real bad if your widget wants to be really big.

Change 3032855 on 2016/06/29 by Alexis.Matte

	#jira UE-32508 Remove the cachewindow from the FTextInputMethodContext constructor since it will be cache only when the IME is activated

	#test please re-test also UE-32240

Change 3033145 on 2016/06/29 by Alex.Delesky

	#jira UE-32239 - The PropertyEditorModule will no longer cause a crash on editor shutdown if a SDetailsView widget tries to force refresh itself when the Slate application is no longer initialized.

Change 3033147 on 2016/06/29 by Alex.Delesky

	#jira UE-32326 - Clicking on the "Install {compiler}" button when trying to create a new code class or code project will now not crash the engine if it fails to open the installation file for write, nor will it create multiple notifications if the button is pressed repeatedly.

	This also addresses a potential issue with static initialization order when it comes to adding TickableEditorObjects to its corresponding array, since it was wholly possible for a statically initialized TickableEditorObject to initialize itself and add itself to the tickable objects arra before the tickable objects array was initialized, causing that object to not get ticked at runtime and causing a crash when the editor was closed.

Change 3033162 on 2016/06/29 by Alex.Delesky

	#jira UE-31827 - Undo/redo now works in the Material function editor.

Change 3033391 on 2016/06/29 by Matt.Kuhlenschmidt

	Fix post process settings blendable picker not being readable in the details panel

Change 3033498 on 2016/06/29 by Matt.Kuhlenschmidt

	Fixed huge number of redundant calls to CanEditChange and
	DiffersFromDefault that were causing massive performance loss when
	thousands of objects are selected. CanEditChange and DiffersFromDefault
	are now cached each time a property value changes.

	Fixed redundant calls for getting visualizers for each selected
	object.  This is now cached on selection

Change 3033504 on 2016/06/29 by Matt.Kuhlenschmidt

	Fix Mass customization on the body instance not working with undo/redo or reset to default

Change 3034357 on 2016/06/30 by Alex.Delesky

	#jira UE-31184 - Renamed the multiple collision components in the cascade particle system to more accurately reflect what they represent.

Change 3035915 on 2016/07/01 by Richard.TalbotWatkin

	Fix to SListPanel so that those with horizontal arrangement (i.e. from STileView) use the number of desired items instead of the number of actual items in order to calculate the desired size of the geometry.  This fixes the case where an STileView is contained within an SScrollBox.
	#jira UE-32195 - STileView no longer works correctly when placed inside of a SScrollBox

Change 3035951 on 2016/07/01 by Richard.TalbotWatkin

	Fixed issue when importing a brush, so that the brush is always validated (relinked), whether it be a static or dynamic brush. This is because the process of rebuilding a dynamic brush sets the link indices to signify FBspSurf indices from the UModel instead of FPoly indices (the FPoly::iLink member is overloaded in its meaning). Always forcing a relink correctly sets the linked list of coplanars.
	#jira UE-32087 - Crash occurs when creating Static Mesh from Trigger Volume

Change 3036991 on 2016/07/04 by Alexis.Matte

	#jira UETOOL-901 Scene importer now support the rigid mesh animation

Change 3037037 on 2016/07/04 by Jamie.Dale

	Fixed regression in editable text box alignment

	Text was no longer vertically aligned center since SEditableText was converted to use a text layout. This vertical alignment is now handled by the outer SEditableTextBox instead.

Change 3037057 on 2016/07/04 by Richard.TalbotWatkin

	Fixed screenshots when running automation tests so that they are saved locally when a FAutomationWorkerScreenMessage is received.
	#jira UE-29815 - In-game screenshot isn't working under certain circumstances

Change 3037082 on 2016/07/04 by Chris.Wood

	Added detection of asserts and passing assert flag and crash type string to crash reports.
	[UE-30592] - Crash Reporter should determine crash type on client and pass string to server

	Reviewe by Steve with reservations about the static variable for setting asserted state. While not thread-aware, this is probably accurate enough for the purpose of crash reporting, certainly for now. I'm submitting it like this because the work required to add fully thread-aware fix is not necessary at this point.

Change 3037095 on 2016/07/04 by Alexis.Matte

	Fix the bone name when duplicating a socket.

Change 3037453 on 2016/07/05 by Stephan.Jiang

	Adding ability to animate the root wigdet #2
	FHierarchyRoot adds the preview widget instead of CDO to selectedobjects in widgetblueprint
	the properties are then migrated back to the CDO

	#UE 31810

Change 3037487 on 2016/07/05 by Jamie.Dale

	Fixed crash caused by stale BP pointer

	#jira UE-32325

Change 3037488 on 2016/07/05 by Jamie.Dale

	Fixed a crash that could occur when a class and a folder had the same name

Change 3037526 on 2016/07/05 by Jamie.Dale

	Speculative fix for a potential race condition when shutting down the editor while a "launch" was in progress

	The launch-thread could potentially queue up a request after the game-thread had requested it cancel, and cleared out any queued tasks. This change has the game-thread wait for the launch-thread to acknowledge its cancellation before continuing with editor shutdown.

	#jira UE-17688

Change 3037557 on 2016/07/05 by Alex.Delesky

	#jira UE-32424 - Added a safeguard to ensure that renaming a world that was duplicated from another world would not crash the editor if both worlds' lightmaps and shadowmaps were still active in memory, due to the editor attempting to rename identical textures from different packages to the same location.

	The actual fix to this issue was performed in an earlier CL, but this should prevent the editor from crashing if the issue returns.

Change 3037558 on 2016/07/05 by Alex.Delesky

	#jira UE-32285 - Importing assets to the Content Browser via drag and drop operations are no longer permitted while the UI file picker dialog is opened.

Change 3037559 on 2016/07/05 by Alex.Delesky

	#jira UE-32075 - The user can no longer attempt to import non-FBX and non-OBJ files when importing into a level.

Change 3037593 on 2016/07/05 by Stephan.Jiang

	GitHub #2549: Add function for setting the playback rate of UMG animations
	original code shelved in CL 3033449

	#UE-32653

Change 3037605 on 2016/07/05 by Jamie.Dale

	Fixed infinite recursion that could happen when gather loc from an object with a custom callback

	#jira UE-32670

Change 3037649 on 2016/07/05 by Nick.Darnell

	PR #2538: [WidgetBlueprintLibrary] GetAllWidgetsOfClass, Added META ~ DeterminesOutputType, DynamicOutputParam, removes the need for extra cast,   Rama (Contributed by EverNewJoy)

Change 3037652 on 2016/07/05 by Nick.Darnell

	Clean - Removing commented out code.

Change 3037658 on 2016/07/05 by Matt.Kuhlenschmidt

	Fix initial hitch when dragging around in a color picker opened from a material expression node.

Change 3037679 on 2016/07/05 by Nick.Darnell

	Engine - Texture2D no longer forces the MIP level to 0 for TextureGroup_UI textures.

Change 3037757 on 2016/07/05 by Nick.Darnell

	PR #2447: WebBrowser widget: Added GetUrl method and OnUrlChanged property (Contributed by nelbok)

Change 3037840 on 2016/07/05 by Nick.Darnell

	UMG - Now allowing for spirtes to be used just like textures and materials on UMG widgets anywhere that takes a brush, can now also take a Sprite.  There is now a ISlateTextureAtlasInterface interface that any UObject may now implement if it wishes to integrate with UMG to provide its atlas data in a form Slate can understand.

Change 3037924 on 2016/07/05 by Jamie.Dale

	Re-ordered variable initialization to appease a warning on Mac

Change 3037981 on 2016/07/05 by Jamie.Dale

	Fixed crash where FColorStructCustomization could call SetPerObjectValues with an empty array

	#jira UE-32639

Change 3038075 on 2016/07/05 by Cody.Albert

	Removed misleading error message in HandleCECommand

	#jira 28007

Change 3038231 on 2016/07/05 by Alexis.Matte

	#jira UE-30694 We set the section collision only if there is an imported collision or a generated one. If there is no collision we do not set the collision flag.

Change 3038275 on 2016/07/05 by Alex.Delesky

	#jira UE-32689 - "Game Gets Mouse Control" will now override the Capture Mouse on Launch setting when launching the game from within a Level Viewport (i.e., within the editor window itself).

Change 3039310 on 2016/07/06 by Trung.Le

	#jira UE-25005 Change PIE Key Bindings
	- Removed Shift+F1 and Esc from BaseInput.ini
	- Created new customizable key binding for
	   + Shift+F1: same functionality.
	   + Esc: now will pause the play session and bring back the mouse cursor. Clicking the mouse on the viewport should resume play session.
	   + Shift+Esc: now will stop the play session

Change 3039458 on 2016/07/06 by Trung.Le

	Removed unused code in StaticMeshLight.cpp

Change 3039827 on 2016/07/06 by Frank.Fella

	FString - Fix divide overload path concatenation for empty paths since there are several places in the engine that expect using that doing { path / "" } will append a / onto path.

	#jira UE-31959

Change 3041094 on 2016/07/07 by Nick.Darnell

	WebBrowser - Fixing an issue where the web browser widget plugin wasn't loading soon enough to be properly loaded in time if it was referenced by game nessesary content thatloads in the Default stage of the pipeline, so moving it to PreDefault.

	#jira UE-32694

Change 3041110 on 2016/07/07 by Matt.Kuhlenschmidt

	Fix visualizers on blueprint actors not working when the internal components are trashed and replaced

Change 3041302 on 2016/07/07 by Chris.Wood

	Increased buffer size for crash uploads.
	[UE-32151] - High number of crashes read from S3 by Crash Report Process are failing to unpack

	Trivial change in dev branch - no code review

Change 3041969 on 2016/07/07 by Nick.Darnell

	UMG - Input Key Selector now no longer adds a bogus Selected Key property to the details panel.

Change 3041971 on 2016/07/07 by Nick.Darnell

	UMG - Not using separate settings for the Engine/Developer folders visible in the UMG palette, now just using the same setting that powers the content browser.

Change 3042612 on 2016/07/08 by Trung.Le

	#jira UE-25005, set Shift+Esc defaults to toggle play/pause and Esc remains defaults to quit

Change 3042732 on 2016/07/08 by mitchell.wilson

	Adding test content for UMG Paper 2d Atlas test

Change 3042780 on 2016/07/08 by mitchell.wilson

	Updating UMG_Paper2d test content for UMG Paper 2d Atlas testing

Change 3042870 on 2016/07/08 by mitchell.wilson

	Renaming UMG_Paper2d to UMG_Sprite

Change 3044104 on 2016/07/10 by Nick.Darnell

	PR #2104: Improved widget input support (Contributed by projectgheist)

Change 3044107 on 2016/07/10 by Nick.Darnell

	Slate - Fixing the slider handle rendering to no longer run off the edge and get cut off.

	#jira UE-25750

Change 3044377 on 2016/07/11 by Chris.Wood

	Add Slack messaging module - Epic Friday

Change 3044536 on 2016/07/11 by Alex.Delesky

	#jira UE-7293 - Mouse locking to viewport is now determined off an enum instead of a boolean, to allow for more flexibility when upgrading with new features.

Change 3044922 on 2016/07/11 by Nick.Darnell

	Slate/UMG - Working on better support for VR interactions with Slate widgets.  This change fixes a lot of issues with the way interaction works with slate widgets rendered in the virtual world.  Breakages, direct mouse interaction with widgets in the virtual world is no longer supported.  Those kinds of interactions must all use the WidgetInteractionComponent now, which by default works similar to the lasers in VREditor for interaction.  However - you can disable automatic hittesting, and instead provide a custom hitresult instead if you want to use screen tracing and act like you're just a mouse cursor that is supported.  Menu anchors now properly function inside of widgets in the virtual world.  Performance improvements - the viewport no longer arranges all 3d widgets every frame.  Additionally, Widget Components now support a whole bunch of methods for reducing how often they redraw to help control performance, they also support manual refresh.  This automatically works in tandem with the widget interaction component to request refresh whenever the widget interaction component is interacting with the widget, thus giving you a simple way to only redraw widgets that the user is hovering on top of.  Unrelated - this change also fixes Stop navigation commands not working with Next/Prev navigation - Wrap is still unsupported.

Change 3045157 on 2016/07/11 by Nick.Darnell

	Slate - Always consume the bottom face button of the analog cursor, even if it's a repeat.

Change 3045355 on 2016/07/11 by Matt.Kuhlenschmidt

	Added logging for unreproducible top 10 crash in matinee when a track ends up not being able to add a keyframe

Change 3045358 on 2016/07/11 by Alex.Delesky

	#jira UE-31179 - The editor should now log additional information and hit an assertion if the editor tries to construct FObjectOrAssetData using invalid data. This doesn't stop the crash, but should help get some extra info when it does break.

Change 3045371 on 2016/07/11 by Matt.Kuhlenschmidt

	Enable the widget reflector from the editor console by typing "widgetreflector"

Change 3045387 on 2016/07/11 by Stephan.Jiang

	Stripping off 'b' in the propertyname so that "Is Enabled" is animated properly.

	#UE-31874

Change 3046093 on 2016/07/12 by Nick.Darnell

	UMG - The Slider now exposes the IsFocusable option from Slate.

	#jira UE-32960

Change 3046094 on 2016/07/12 by Alexis.Matte

	#jira UE-32807 scene re-import blueprint hierarchy kept some part of old blueprint component value.

Change 3046104 on 2016/07/12 by Stephan.Jiang

	typo "Syc" causing the "Sync" button doesn't show Slateicon

	#UE-31409

Change 3046142 on 2016/07/12 by Nick.Darnell

	Orion - Upgrading more code to use the new input mode functions and not the deprecated ones.

Change 3046165 on 2016/07/12 by Nick.Darnell

	UMG - Fixing a crash on the widget component if the render target is null when reapplied through widget component data.

	#jira UE-32844

Change 3046255 on 2016/07/12 by Nick.Darnell

	UT - More build warning fixes for the new Input Mode methods.

Change 3046604 on 2016/07/12 by Richard.Hinckley

	Adding a template file and code to support creating a UInterface directly from the New C++ Class wizard.

Change 3047071 on 2016/07/12 by Matt.Kuhlenschmidt

	Better way of summoning the widget reflector from the console

Change 3047842 on 2016/07/13 by Matt.Kuhlenschmidt

	Mark Subdivision surface setting as advanced since it is experimental and definitely for advanced users only

Change 3048754 on 2016/07/13 by Trung.Le

	#jira UE-32159 Automatically regain focus after user gets mouse control during PIE session so we can continue process PIE keybinding commands

Change 3048756 on 2016/07/13 by Trung.Le

	Removed default toggle pause/play keybinding from BaseInput.ini, instead we should use the action defined in DebuggerCommands that is customizable

Change 3048865 on 2016/07/13 by Trung.Le

	#jira UE-32159 SGlobalPlayWorldActions widget shouldn't clear out active widget pointer when it's being handled properly

Change 3048892 on 2016/07/13 by Nick.Darnell

	UMG - Fixing a problem with the interaction component, it now does some basic intelligent ignoring of anything it's attached to - excluding widget components.  So it's easier to attach it to things that might be inside of a say a player collision capsule.  Also removing the 'Max Interaction Distance' from the widget component as that is no longer the arbitor of interaction distance.

	#jira UE-33250

Change 3049096 on 2016/07/13 by Trung.Le

	Wrap SGlobalPlayActions around ViewportWidget instead of making it a child of ViewportWidget. This was causing PIE to stop working when there are other UMG in game.
	#jira UE-33259

Change 3049177 on 2016/07/13 by Stephan.Jiang

	Fixing the "No Animation Selected" tag shows up after switching back from Graph to Designer.

	#UE-33016

Change 3049726 on 2016/07/14 by Stephan.Jiang

	Adding icons for terrain mirror tool

	#UE-20588

Change 3049957 on 2016/07/14 by Nick.Darnell

	Slate - Fixing a small bug in the virtual user function - was preventing getting the same virtual user multiple times if it had already been created.  Adding an option to the widget component to control the focusabilty of the underlying slate window that's created to host the widget content.  Adding an option to the widget interaction component to control if it should be simulating mouse input at all - use this to effectively disable hit testing, and changing hover states and the like.

Change 3049994 on 2016/07/14 by Stephan.Jiang

	Set viewed animtion to current animtion after switching from Graph to Designer
	(This is for "No Animation Selected" showing up when switching)

	#UE-33016

Change 3050194 on 2016/07/14 by Stephan.Jiang

	Added ability to replace the widget the track is currently bound to
	Also includes changes in WidgetBlueprintEditor to send delegate to AnimationtabSummoner when switching from Graph to Designer

	#UE-31809

[CL 3050870 by Matt Kuhlenschmidt in Main branch]
2016-07-14 19:07:16 -04:00
Robert Manuszewski
f4fb4b8596 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 2996057)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2975196 on 2016/05/12 by Robert.Manuszewski

	Garbage Collector will no longer be responsible for generating class token stream, instead the token stream will be generated on startup or when a class has finished loading.

	- This way we can avoid very long GC times after new blueprints have been loaded.
	- Temporarily enabled CLASS_TokenStreamAssembled check in development builds (for testing purposes)

Change 2993960 on 2016/05/30 by Robert.Manuszewski

	Fixing leaked linkers created by blocking load requests during async loading.

Change 2959398 on 2016/04/28 by Steve.Robb

	TMap references are strong and cannot be nulled by pending kill.  This makes references in values strong too, even though we only really care about keys, which will corrupt the map when nulled.

	#jira UE-20828

Change 2960723 on 2016/04/29 by Graeme.Thornton

	Fix for texture asset import data being ignored when async loaded

Change 2960938 on 2016/04/29 by Robert.Manuszewski

	Nulling out sql db handle after closing it.

Change 2967127 on 2016/05/05 by Steve.Robb

	Move constructors explicitly disabled in generated code.

Change 2967143 on 2016/05/05 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2967164 on 2016/05/05 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer

Change 2968650 on 2016/05/06 by Steve.Robb

	Fix for HotReload copying module manager.

Change 2968915 on 2016/05/06 by Robert.Manuszewski

	Fixing spelling of SetImageIntegrityStatus function name.

Change 2970406 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	Function uses '...' bytes of stack:  exceeds /analyze:stacksize '81940'.  Consider moving some data to heap.

Change 2970419 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.
	warning C6011: Dereferencing NULL pointer '...'.
	warning C6385: Reading invalid data from '...':  the readable size is '...' bytes, but '...' bytes may be read.
	warning C6386: Buffer overrun while writing to '...':  the writable size is '...' bytes, but '...' bytes might be written.

Change 2970431 on 2016/05/09 by Steve.Robb

	Static analysis fixes:

	warning C6299: Explicitly comparing a bit field to a Boolean type will yield unexpected results.

Change 2972032 on 2016/05/10 by Steven.Hutton

	Workflow fixes to bugg / crashgroup filtering. Filters should now correctly persist across queries.

Change 2972085 on 2016/05/10 by Steve.Robb

	Const-correctness fix for FLogCategoryBase::IsSuppressed.

Change 2972087 on 2016/05/10 by Steve.Robb

	ELogVerbosity moved into its own header.

Change 2972090 on 2016/05/10 by Steve.Robb

	Redundant ensure removed.

Change 2972103 on 2016/05/10 by Steve.Robb

	Removal of redundant use of USING_CODE_ANALYSIS.

Change 2972139 on 2016/05/10 by Steve.Robb

	Fix for ensure macros throwing C6326 warnings during static analysis.

Change 2972147 on 2016/05/10 by Steve.Robb

	Fix for UE_LOG_ACTIVE macro throwing C6326 warnings during static analysis.

Change 2972162 on 2016/05/10 by Steve.Robb

	SCOPE_CYCLE_COUNTER_GUARD removed.

Change 2972168 on 2016/05/10 by Steve.Robb

	Compile error fix for logOrEnsureNanError in static analysis builds.

Change 2973084 on 2016/05/10 by Chris.Wood

	Crash Report Server performance tweak

Change 2974030 on 2016/05/11 by Steve.Robb

	Fix for IPropertyHandle::SetValue - used to take a non-const reference to a const UObject*, now it takes const references to both non-const and const UObject*.

Change 2974053 on 2016/05/11 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2974191 on 2016/05/11 by Steve.Robb

	Fix for template instantiation error in VS2013.

Change 2975298 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.

Change 2975318 on 2016/05/12 by Steve.Robb

	Fix for hot reload info being reported as warnings.

	#jira UE-30586

Change 2975447 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6235: (<non-zero constant> || <expression>) is always a non-zero constant.
	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.  Did you intend to use the bitwise-and operator?
	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.  Did you intend to use the bitwise-and operator?
	warning C6285: (<non-zero constant> || <non-zero constant>) is always a non-zero constant.  Did you intend to use the bitwise-and operator?
	warning C6286: (<non-zero constant> || <expression>) is always a non-zero constant.  <expression> is never evaluated and might have side effects.
	warning C6289: Incorrect operator:  mutual exclusion over || is always a non-zero constant.  Did you intend to use && instead?
	warning C6316: Incorrect operator:  tested expression is constant and non-zero.  Use bitwise-and to determine whether bits are set.

Change 2975478 on 2016/05/12 by Steve.Robb

	Static analysis fixes for lots of redundant <zero constant> and <non-zero constant> warnings.

Change 2975538 on 2016/05/12 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'StaticResource'

Change 2976640 on 2016/05/13 by Robert.Manuszewski

	Fixing crashes caused by token stream generation changes. Making sure the token stream gets re-generated when a class gets re-linked.

	#jira UE-30675

Change 2978320 on 2016/05/16 by Steve.Robb

	Fix for static analysis warnings in XNA headers.

Change 2978329 on 2016/05/16 by Steve.Robb

	Static analysis fixes:

	warning C6334: sizeof operator applied to an expression with an operator might yield unexpected results:  Parentheses can be used to disambiguate certain usages.

Change 2980222 on 2016/05/17 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'X'.
	warning C28182: Dereferencing NULL pointer. 'X' contains the same NULL value as 'Y' did.

Change 2980458 on 2016/05/17 by Chris.Wood

	Attempt to fix crash report submission problems from CRP to CR website
	[UE-30257] - Crashreports are sometimes missing file attachments

	Passing crash GUID so that website can easily check for duplicates in future
	Increased request timeout for AddCrash to be longer than website database timeout
	Logging retries for future visibility
	CRP v.1.1.6

Change 2980639 on 2016/05/17 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'X'.
	warning C28182: Dereferencing NULL pointer. 'X' contains the same NULL value as 'Y' did.

Change 2981750 on 2016/05/18 by Steve.Robb

	check()s in ContainerAllocationPolicies.h changed to checkSlow()s, as they only exist to check that the container has been written correctly.

Change 2982106 on 2016/05/18 by John.Mahoney

	Fixed a crash caused by loading two stat capture files simultaneously in the profiler.
	If the user tries to load a capture file while another load is in progress, the previous load is now cancelled and cleaned up before proceeding with the new load.
	Made the delegates in FNewStatsReader explicitly specify which profiler instance they are loading data for, instead of relying on the current value of LoadConnection->InstanceId.
	This also fixes a crash that occurs when selecting a different capture file in the "Stats dump browser" pane of the profiler (after using Load Folder) while another file is still loading.
	Cleaned up some weak pointer usage in the profiler window.

	#jira UE-30741

Change 2983366 on 2016/05/19 by Steven.Hutton

	Changes for passing crash type directly from CRP to CRW.

Change 2983394 on 2016/05/19 by Steven.Hutton

	Minor changes to add crash with more error reporting

Change 2984685 on 2016/05/20 by Robert.Manuszewski

	Merging //UE4/Dev-Main @ 2984626 to Dev-Core (//UE4/Dev-Core)

Change 2985143 on 2016/05/20 by Steve.Robb

	Missing semi-colons.

Change 2986463 on 2016/05/23 by Steve.Robb

	CopyTemp added to make it clear that you want to make a copy (rather than a move, or an accidental copy) at the call site of a function taking rvalue refs.

Change 2986475 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6313: Incorrect operator:  zero-valued flag cannot be tested with bitwise-and.

Change 2986476 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6313: Incorrect operator:  zero-valued flag cannot be tested with bitwise-and.

Change 2986480 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant

Change 2986515 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6340: Mismatch on sign: 'X' passed as _Param_(N) when some unsigned type is required in call to 'Func'

Change 2986680 on 2016/05/23 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'Ptr':  the writable size is 'X' bytes, but 'Y' bytes might be written.
	warning C6387: 'Ptr' could be '0':  this does not adhere to the specification for the function 'Func'
	warning C6031: Return value ignored: 'snprintf'.
	warning C6340: Mismatch on sign: 'const unsigned int' passed as _Param_(4) when some signed type is required in call to 'snprintf'.

Change 2986865 on 2016/05/23 by Robert.Manuszewski

	Removing redundand AddReferencedObjects functions

Change 2987968 on 2016/05/24 by Robert.Manuszewski

	Removing redundant UPROPERTY macros from intrinsic classes.

Change 2987979 on 2016/05/24 by Steve.Robb

	Optimization of some FString and FPaths operations to produce fewer temporaries.

Change 2988297 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 2988430 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6385: Reading invalid data from 'var':  the readable size is 'X' bytes, but 'Y' bytes may be read.

Change 2988461 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6235: (<non-zero constant> || <expression>) is always a non-zero constant.
	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.
	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.

Change 2988464 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6262: Function uses 'X' bytes of stack:  exceeds /analyze:stacksize 'Y'.  Consider moving some data to heap.

Change 2988494 on 2016/05/24 by Steve.Robb

	Static analysis fixes:

	warning C6237: (<zero> && <expression>) is always zero.  <expression> is never evaluated and might have side effects.

Change 2989411 on 2016/05/25 by Robert.Manuszewski

	Splitting GC cluster index and intenral object flags to allow more UObjects in editor builds.

Change 2989429 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6387: '_Param_(X)' could be '0':  this does not adhere to the specification for the function 'Func'.

Change 2989982 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6001: Using uninitialized memory 'LODPlanesMin'.

Change 2990018 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6386: Buffer overrun while writing to 'X'

Change 2990077 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6240: (<expression> && <non-zero constant>) always evaluates to the result of <expression>.
	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2990114 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6336: Arithmetic operator has precedence over question operator, use parentheses to clarify intent.

Change 2990125 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6239: (<non-zero constant> && <expression>) always evaluates to the result of <expression>.

Change 2990162 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C6294: Ill-defined for-loop:  initial condition does not satisfy test.  Loop body not executed.

Change 2990193 on 2016/05/25 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'type' contains the same NULL value as 'type->base_type' did.
	warning C6011: Dereferencing NULL pointer 'Semantic'.

Change 2991006 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C28113: Accessing a local variable dummy via an Interlocked function:  This is an unusual usage which could be reconsidered.

Change 2991012 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6031: Return value ignored: 'InitializeCriticalSectionAndSpinCount'.

Change 2991013 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6287: Redundant code:  the left and right sub-expressions are identical.

Change 2991016 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6236: (<expression> || <non-zero constant>) is always a non-zero constant.

Change 2991017 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6326: Potential comparison of a constant with another constant.

Change 2991019 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6292: Ill-defined for-loop:  counts up from maximum.

Change 2991023 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6322: Empty _except block.
	warning C28251: Inconsistent annotation for 'WinMain': this instance has no annotations.

Change 2991070 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C28182: Dereferencing NULL pointer. 'Ptr1' contains the same NULL value as 'Ptr2' did.

Change 2991416 on 2016/05/26 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2992738 on 2016/05/27 by Steve.Robb

	Revert changes to FString::MatchesWildcard.

Change 2992916 on 2016/05/27 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2992960 on 2016/05/27 by Chris.Wood

	Optimized P4 access in Crash Report Process and MinidumpDiagostics.

Change 2992964 on 2016/05/27 by Steve.Robb

	Static analysis fixes:

	warning C6011: Dereferencing NULL pointer 'Ptr'.

Change 2993956 on 2016/05/30 by Robert.Manuszewski

	Fixing a crash after adding a new C++ class in the editor - made sure new classes have the token stream assembled after hot-reload.

	#jira UE-31309

Change 2993977 on 2016/05/30 by Robert.Manuszewski

	Don't wait for all packages to finish loading before PostLoading those which already have.

Change 2994206 on 2016/05/31 by Robert.Manuszewski

	PR #2429: Three bug fixes required for script support to work properly (Contributed by pluranium)

#lockdown Nick.Penwarden

[CL 2996251 by Robert Manuszewski in Main branch]
2016-06-01 12:08:56 -04:00
Andrew Grant
505e2440b1 Copying //UE4/Orion-Staging to //UE4/Main (Origin: //Orion/Dev-General @ 2904087)
==========================
MAJOR FEATURES + CHANGES
==========================

#lockdown Nick.Penwarden

Change 2903938 on 2016/03/10 by Frank.Gigliotti

	Added an instance ID to FAnimMontageInstance

	#CodeReview Laurent.Delayen
	#RB Laurent.Delayen
	#Tests PIE

Change 2903745 on 2016/03/10 by Wes.Hunt

	Update Oodle TPS
	#rb none
	#tests none
	#codereview:john.pollard

Change 2903689 on 2016/03/10 by Uriel.Doyon

	New "LogHeroMaterials" console command, displaying the current state of materials and  textures on the character hero.
	#rb marcus.wasmer
	#codereview marcus.wassmer
	#tests editor, playing PC games, trying the new command

Change 2903669 on 2016/03/10 by Aaron.McLeran

	OR-17180 Make stat soundcues and stat soundwaves NOT display zero volume sounds

	- Change only effects debug stat commands for audio guys

	#rb none
	#tests played paragon with new debug stat commands, confirms doesn't show zero-volume sounds

Change 2903625 on 2016/03/10 by John.Pollard

	XB1 Oodle SDK

	#rb none
	#tests none
	#codereview Jeff.Campeau

Change 2903577 on 2016/03/10 by Ben.Marsh

	Remaking latest build scripts from //UE4/Main @ 2900980.

Change 2903560 on 2016/03/10 by Ben.Marsh

	Initial version of BuildGraph scripts - used to create build processes in UE4 which can be run locally or in parallel across a build farm (assuming synchronization and resource allocation implemented by a separate system). Intended to supersede GUBP.

	Build graphs are declared using an XML script using syntax similar to MSBuild, ANT or NAnt, and consist of the following components:

	* Tasks: Building blocks which can be executed as part of the build process. Many predefined tasks are provided (<Cook>, <Compile>, <Copy>, <Stage>, <Log>, <PakFile>, etc...), and additional tasks may be added be declaring classes derived from AutomationTool.CustomTask in other UAT modules.
	* Nodes: A named sequence of tasks which is executed to produce outputs. Nodes may have input dependencies on other nodes before they can be executed. Declared with the <Node> element in scripts.
	* Agent Groups: A set of nodes nodes which is executed on the same machine if running as part of a build system. Has no effect when building locally. Declared with the <Group> element in scripts.
	* Triggers: Container for groups which should only be executed when explicitly triggered (using the -Trigger=<Name> or -SkipTriggers command line argument). Declared with the <Trigger> element in scripts.
	* Notifiers: Specifies email recipients for failures in one or more nodes, whether they should receive notifications on warnings, and so on.

	Properties can be passed in to a script on the command line, or set procedurally with the <Property Name="Foo" Value="Bar"/> syntax. Properties referenced with the $(Property Name) notation are valid within all strings, and will be expanded as macros when the script is read. If a property name is not set explicitly, it defaults to the contents of an environment variable with the same name.

	Local properties, which only affect the scope of the containing XML element (node, group, etc...) are declared with the <Local Name="Foo" Value="Bar"/> element, and will override a similarly named global property for the local property's scope.

	Any elements can be conditionally defined via the "If" attribute, and are largely identical to MSBuild conditions. Literals in conditions may be quoted with single (') or double (") quotes, or an unquoted sequence of letters, digits and underscore characters. All literals are considered identical regardless of how they are declared, and are considered case-insensitive for comparisons (so true equals 'True', equals "TRUE"). Available operators are "==", "!=", "And", "Or", "!", "(...)", "Exists(...)" and "HasTrailingSlash(...)". A full grammar is written up in Condition.cs.

	File manipulation is done using wildcards and tags. Any attribute that accepts a list of files may consist of: a Perforce-style wildcard (matching any number of "...", "*" and "?" patterns in any location), a full path name, or a reference to a tagged collection of files, denoted by prefixing with a '#' character. Files may be added to a tag set using the <Tag> Task, which also allows performing set union/difference style operations. Each node can declare multiple outputs in the form of a list of named tags, which other nodes can then depend on.

	Build graphs may be executed in parallel as part build system. To do so, the initial graph configuration is generated by running with the -Export=<Filename> argument (producing a JSON file listing the nodes and dependencies to execute). Each participating agent should be synced to the same changelist, and UAT should be re-run with the appropriate -Node=<Name> argument. Outputs from different nodes are transferred between agents via shared storage, typically a network share, the path to which can be specified on the command line using the -SharedStorageDir=<Path> argument. Note that the allocation of machines, and coordination between them, is assumed to be managed by an external system.

	A schema for the known set of tasks can be generated by running UAT with the "-Schema=<FileName>" option. Generating a schema and referencing it from a BuildGraph script allows Visual Studio to validate and auto-complete elements as you type.

	#rb none
	#codereview Marc.Audy, Wes.Hunt, Matthew.Griffin, Richard.Fawcett
	#tests local only so far, but not part of any build process yet

Change 2903539 on 2016/03/10 by John.Pollard

	Improve replay playback debugging of character movement

	#rb none
	#tests replays

Change 2903526 on 2016/03/10 by Ben.Marsh

	Remake changes from //UE4/Main without integration history, to add support for BuildGraph tasks.

	#rb none
	#tests none

Change 2903512 on 2016/03/10 by Dan.Youhon

	Modify minimum Duration values for JumpForce and MoveToForce ability tasks so that having minimum Duration values doesn't trigger check()s

	#rb None
	#tests Compiles

Change 2903474 on 2016/03/10 by Marc.Audy

	Fix crash if ChildActor is null
	#rb None
	#tests None

Change 2903314 on 2016/03/10 by Marc.Audy

	Fix ParentComponent not being persisted and fixup content that was saved in the window it was broken
	#rb James.Golding
	#tests Selection of child actors works as expected
	#jira UE-28201

Change 2903298 on 2016/03/10 by Simon.Tovey

	Disabling the trails optimization.

	#tests none
	#rb none

	#codereview Olaf.Piesche

Change 2903124 on 2016/03/10 by Robert.Manuszewski

	Small refactor to pak signing to help with exe protection

	#rb none
	#tests none

[CL 2907678 by Andrew Grant in Main branch]
2016-03-13 18:53:13 -04:00
Andrew Grant
98ee5066e7 Copying //UE4/Orion-Staging to //UE4/Main (Origin //Orion/Dev-General @ 2861092)
#lockdown Nick.Penwarden

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2861045 on 2016/02/09 by Marcus.Wassmer

	Fix debug editor crash from async compute creating commands when it shouldn't.
	#rb none
	#test debug editor

Change 2861030 on 2016/02/09 by Michael.Noland

	Engine: Added support for debugging safe zones (visualization on any platform and simulation on platforms that don't natively provide safe zone information)

	r.DebugSafeZone.Mode controls the debug visualization overlay (0..2, default 0)
	- 0: Do not display the safe zone overlay
	- 1: Display the overlay for the title safe zone
	- 2: Display the overlay for the action safe zone

	r.DebugSafeZone.OverlayAlpha controls how opaque the debug visualization overlay is (0..1, default 0.3)

	On platforms that don't natively support safe zones, you can simulate a safe zone for quick/easy testing in the editor:
	- r.DebugSafeZone.TitleRatio controls the title safe zone margins returned in FDisplayMetrics
	- r.DebugActionZone.ActionRatio controls the action safe zone margins returned in FDisplayMetrics
	- These both range from 0..1, and default to 1 indicating 100% of the display is safe. A typical test value would be 0.9

	#codereview josh.adams
	#rb marcus.wassmer
	#tests Tested on Win64 uncooked and PS4 cooked (front-end and game)

Change 2860923 on 2016/02/09 by Andrew.Grant

	Fix client warning about HTTPChunkInstaller module not existing
	#rb none
	#tests ran Win64 client

Change 2860852 on 2016/02/09 by Daniel.Wright

	Fixed crash enabling capsule direct shadows in BP
	#rb Nick.Penwarden
	#tests Editor

Change 2860842 on 2016/02/09 by Marcus.Wassmer

	MallocLeakDetection proxy
	#rb Steve.Robb
	#test PS4/PC testing all commands.

Change 2860744 on 2016/02/09 by Josh.Markiewicz

	#UE4 - fixed possible crash when refresh auth with invalid response
	#rb sam.zamani
	#tests login flow
	#codereview justin.sargent, joe.wilcox, pter.knepley, ben.zeigler

Change 2860739 on 2016/02/09 by Laurent.Delayen

	Sync Markers
	- Reset SyncGroups every frame.
	- ::GetSyncGroupPosition() makes sure there is a valid MarkerSyncContext.

	=> Fixes SyncGroup returning 'valid' positions for TransitionLeaders that were not in between sync markers.

	#rb martin.wilson
	#codereview lina.halper
	#tests new riftmage and kurohane networked in PIE

Change 2860736 on 2016/02/09 by Daniel.Lamb

	Fixed issue with iterative cook on the fly invalidating cooked content all the time.
	#rb Marcus.Wassmer
	#test Cook on the fly iterative ps4

Change 2860598 on 2016/02/09 by Joe.Graf

	Simple log category change to match existing log messages in LoadMap

	#rb: n/a
	#test: loading, cooking, game

Change 2860559 on 2016/02/09 by Zak.Middleton

	#orion - Add flag to AIController to control whether it copies the Pawn rotation to ControlRotation if there is no focus point.

	#rb Lukasz.Furman
	#tests PIE ded server AI with lanes

Change 2860462 on 2016/02/09 by Marc.Audy

	Build system improvements
	* Added details to Empty manifest file save error
	* Removed redundent pseudo-dependencies from -showdependency output
	* Monolithic Kinds now a set and branch hacker can specify kind not to build
	#rb Ben.Marsh
	#tests Preflight

Change 2860434 on 2016/02/09 by David.Ratti

	NaN checks:
	-Targeting mode checks in orion code
	-Changed the AActor::SetTransform NaN check so that the logging is included in the NaN ensure (rather than getting cut off from the log afterwards).

	#rb FrankG
	#tests golden path vs bots

Change 2860390 on 2016/02/09 by Michael.Trepka

	Adjust 3D rendering resolution so that it stays approximately the same when user switches display modes

	#rb none
	#tests Tested editor build on PC

Change 2860364 on 2016/02/09 by Justin.Sargent

	Removed unused editor-only functions causing compiler errors when compiling the game.

	#rb keli
	#tests none

Change 2860242 on 2016/02/09 by Justin.Sargent

	Made a number of DialogueWave quality of life improvements to the editor and specifically SoundCue editing.

	New right-click option on SoundWaves to create a DialogueWave

[CL 2863630 by Andrew Grant in Main branch]
2016-02-11 14:39:50 -05:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Andrew Grant
9abcacfd1b Merging Engine code from Orion at CL2744789 through //depot/UE4-To-//UE4/Main
[CL 2745726 by Andrew Grant in Main branch]
2015-10-28 19:18:20 -04:00
Saul Abreu
3e89a8d6f6 #codereview Jamie.Dale, Justin.Sargent
Largely rewritten Editor Region & Language Settings page. Far less error prone compared to the old implementation. I'd like to do a lot more to make this not so lame in the future - move the game's native culture to something not editor-specific and leverage it as the default for new game targets in the localization dashboard.

[CL 2706823 by Saul Abreu in Main branch]
2015-09-25 16:24:07 -04:00
Joe Conley
8d407e5f23 OneSky plugin: Extend Loc Dashboard toolbar with OneSky buttons for "Import all cultures/targets from OneSky" and "Export all cultures/targets to OneSky"
[CL 2621657 by Joe Conley in Main branch]
2015-07-15 09:19:20 -04:00
Joe Conley
94500a71c3 Localization Module: GetLocalizationTargetByName moved here from LocalizationDashboard, removing old version and using new version instead
[CL 2620049 by Joe Conley in Main branch]
2015-07-14 09:59:44 -04:00
Saul Abreu
84a57e32e8 Translation editor fixes for loading translations of the native translations quickly. Also fixes import/export from the translation editor.
[CL 2616005 by Saul Abreu in Main branch]
2015-07-09 19:38:01 -04:00
Saul Abreu
eb590ad7c8 Deleted ULocalizationDashboardSettings header and source.
[CL 2612460 by Saul Abreu in Main branch]
2015-07-07 12:00:50 -04:00
Saul Abreu
33e4a10471 Deleted old source files from Localization Dashboard module that had been moved to a new Localization module.
[CL 2611477 by Saul Abreu in Main branch]
2015-07-06 15:36:10 -04:00
Saul Abreu
03739c4279 Created a new localization module for all the editor's general needs with regards to localization configuration scripts and localization pipeline configuration. Necessary minor refactoring to alter dependencies as needed.
[CL 2611380 by Saul Abreu in Main branch]
2015-07-06 14:49:51 -04:00
Joe Conley
8b133a4645 Translation Editor/Picker: Generate the "RegenerateTarget.ini" config files on demand when Previewing translations in the editor
[CL 2608983 by Joe Conley in Main branch]
2015-07-02 09:26:26 -04:00
Joe Conley
43dd04b1be Translation Picker: Upload changes to OneSky
[CL 2608281 by Joe Conley in Main branch]
2015-07-01 17:12:23 -04:00
Saul Abreu
3b3dd418b6 Localization dashboard now appropriately adds the native culture setting to generated localization configuration scripts.
[CL 2603098 by Saul Abreu in Main branch]
2015-06-26 18:44:01 -04:00
Joe Conley
e5b507a3ae Move LocalizationTargetTypes.h to Public folder so it can be included by other modules.
[CL 2588635 by Joe Conley in Main branch]
2015-06-16 10:46:44 -04:00
Saul Abreu
bb0c9e8f5f Fixed localization configuration script generation code that wasn't handling relative paths to files on different drives appropriately. If a relative path can not be calculated, an absolute path will be used.
[CL 2587800 by Saul Abreu in Main branch]
2015-06-15 16:15:44 -04:00