Files
UnrealEngineUWP/Engine/Source/Editor/SourceControlWindows/Private/SSourceControlSubmit.cpp

537 lines
15 KiB
C++
Raw Normal View History

// Copyright 1998-2019 Epic Games, Inc. All Rights Reserved.
#include "SSourceControlSubmit.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "ISourceControlOperation.h"
#include "SourceControlOperations.h"
#include "ISourceControlProvider.h"
Copying //UE4/Dev-Enterprise to //UE4/Dev-Main (Source: //UE4/Dev-Enterprise @ 3972172) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3821754 by Jamie.Dale [Python] Class property conversion now goes through NativizeClass/PythonizeClass This allows it to coerce from Python wrapped object types Change 3833107 by Patrick.Boutot Added functions to fill an existing DataTable from an existing CSV/JSON file. Change 3835044 by Aaron.Carlisle Exposure for asset_import_data (editor property) and it's functions: extract_filenames and get_first_filename. Change 3835466 by Patrick.Boutot Hide function from Python that need special compile command to be executed by the VM. Change 3839237 by Jamie.Dale Added a way to inspect the full chain of properties that are currently being serialized by an archive You used to only have access to the leaf-most property, and while you could use its outer chain to inspect other properties within the same object/struct, you couldn't always get the full chain (eg, if you had an object containing a struct). Change 3839974 by Jamie.Dale Make sure that SerializedProperty is copied correctly, as SetSerializedPropertyChain may set it to something else Change 3842311 by Jamie.Dale Fixing potential null level assert Change 3842313 by Jamie.Dale Updated settings editor to handle external properties Change 3842316 by Jamie.Dale Allowing a console command to be given to GEditor/GEngine even if there's a player CL# 1848982 said it was to prevent multiple execution of stat commands, however that no longer seems to be an issue. Change 3842867 by Jamie.Dale Added a way to generate diffs from editor transactions The notifications from these diffs are send to UObject::PostTransacted and FCoreUObjectDelegates::OnObjectTransacted. These notifications are typically generated when a transaction is "finalized", but can also be generated from "snapshots" (eg, to trap nodes being dragged in the world). They're also generated from normal undo/redo events. Change 3844428 by Patrick.Boutot Move the SetMaterial code from the StaticMeshEditor to StaticMesh to be reusable by script. Change 3845966 by Jamie.Dale Added support for minimal game RPC worlds These can be created in the editor and engine and exist to allow RPC communication via Unreal Networking in a way that is sandboxed from any other worlds that may be loaded (like the main game world) Change 3848844 by Patrick.Boutot Expose EComponentMobility to blueprint. Change 3854616 by Patrick.Boutot Add Custom way time step the engine loop. Will be used by the Synchronization of media for enterprise. Change 3856650 by Jamie.Dale Fixed a bug where transaction finalization could miss changes since the last snapshot Change 3864951 by Patrick.Boutot Fix ghost asset in Content Browser when an asset is added and renamed before the RecentlyAddedAssets list had a chance to be processed. Change 3867158 by JeanMichel.Dignard UBT - Added the ability for dll programs to export symbols. #jira UEENT-541 Change 3872342 by Jamie.Dale Merging static analysis fixes from 4.19 Change 3879305 by Jamie.Dale Improved the processing of py files from exec commands The old logic used to just test if the entire command was a .py file. The new logic extracts out the first token and sees if that's a .py file, and if it is, treats the remaining data as extra arguments. Change 3879306 by Jamie.Dale Added a minimal commandlet for invoking Python scripts Change 3881631 by Jamie.Dale Added basic RTTI to Python meta-data types Change 3885384 by Jamie.Dale [Python] Prevent glue code using reserved names Change 3888957 by Patrick.Boutot In MediaPlayer, only create a PlayerFacade & Playlist when it's not a ClassDefaultObject. The MediaPlayerFacade is a MediaTickable. That trigger the tick thread to be awake even if there is no Media playing. Change 3888961 by Patrick.Boutot Fix FInterval::IsValid return type. Change 3888980 by Patrick.Boutot Modification to Media and MediaAsset to support MediaSmith. The TInterval<int64> will be changed into TTinterval<FTimespan> UEENT-947. MediaSampleQueue's critical section will be change into an atomic operation UEENT-948. Change 3889165 by Patrick.Boutot Fix build. Missing include for Timespan. Introduce with CL 3888980. Change 3889261 by Jamie.Dale [Python] Fixing some more name conflicts in generated code Change 3889504 by Darren.Pegg Add option to change PreferredPixelFormat Change 3891193 by Patrick.Boutot Fix build. Missing include for Interval. Introduce with CL 3888980. Change 3897108 by Patrick.Boutot TTinterval use it own traits. Create a Interval traits for Timespan. #jira UEENT-947 Change 3899669 by Jamie.Dale Fixed Functions sometimes being exposed to Python as if they were Structs Change 3900692 by Jamie.Dale Removed some boilerplate associated with wrapping a basic type to Python You can now derive from TPyWrapperBasic to wrap a type that is simply a value copied into Python (see FPyWrapperName and FPyWrapperText for an example) Change 3901066 by conan.reis UE4 editor script bindings (Cobra) and helper functions for version control - exposed SourceControl class with common source control methods and associated SourceControlState structure - commands have smart file strings that can convert from any of fully qualified path, relative path, long package name, asset path or export text path (often stored on clipboard) - commands store any errors in a shared error text object which is optionally printed to the error log - renamed some calls across the UE4 codebase to USourceControlHelpers::CheckOutOrAddFile() from USourceControlHelpers::CheckOutFile() - included Python test script for source control commands including that auto-creates test files as needed and passes various types of files to test as command line arguments. Any unexpected results displays error messages. Change 3901388 by Jamie.Dale Minimal Slate hooks for Python Change 3901456 by Jamie.Dale Added missing file Change 3901549 by Jamie.Dale Removing some more Windows defines that were causing build issues Change 3904518 by conan.reis Source Control - ensured that "check if modified" flag is set whenver getting source control state in USourceControlHelpers::QueryFileState() which was needed when using Perforce source control provider Change 3905612 by Francis.Hurteau Optimize RemoveDuplicates somewhat using a TSet #jira UEENT-217 Change 3912626 by Jamie.Dale Fixed ShouldExcludeDerivedClasses option not working RecursiveClassesExclusionSet requires a base ClassNames entry to operate on when filtering. Change 3917739 by Jamie.Dale Output Log suggestions list is now clamped to the work area width of the monitor that hosts the widget Change 3917744 by Jamie.Dale Changed generated code to reference the UProperty and UFunction directly, rather than constantly look them up by name Names were originally used because UHT couldn't access the objects when it registered the glue code, but now that we generate at runtime via reflection, we already have the relevant objects available, and caching them the glue structs helps performance at both generation time and runtime. Change 3918832 by Jamie.Dale Removed field iteration from Python function calls We now cache the input and output parameters for all function calls (methods, get/set, and delegates) and use this rather than iterate the struct fields. Change 3920648 by Patrick.Boutot Remove the bottom right part of the windows border of the grabbed frame when in the editor. Tested in the standalone, windowed and full screen. Add option to request a FlushOnDraw on the viewport. Flushing in SDI output flow decreases the performance by ~10ms. SDI output is synchronized and the engine tick follows that synchronization. Change 3921396 by Jamie.Dale Split up the generated type data to correspond to the type being wrapped A lot of types can just use the minimal set, but classes and structs have some extra data. Change 3921619 by conan.reis - add delegate to FSourceControlWindows::ChoosePackagesToCheckin() that gives info for result, result description, files added, files checked in and flag indicating whether files were checked out again. - also added result info to FSourceControlWindows::PromptForCheckin() #jira UE-55255 Change 3921624 by conan.reis Removed Source Control common files from pre compiled header - main changes are in UnrealEdPrivatePCH.h, UnrealEdSharedPCH.h, SouceControlWindows.h and the added SouceControlWindows.cpp - remaining files have includes changed to accomodate Change 3921958 by conan.reis Fix attempt for incude file dependency needed by some build configurations (likely PCH disabled) caused by CL3921619 Change 3922740 by conan.reis Included SourceControlOperations.h and SourceControlHelpers.h back in ISourceControlProvider.h though it does not need them since other files that were including ISourceControlProvider.h have come to expect their inclusion. They were previously removed in CL3921624 Change 3923375 by Jamie.Dale Added optimized FString <-> icu::UnicodeString conversion for platforms using UTF-16 native strings Change 3926547 by Jamie.Dale Added support for struct method "hoisting" This allows you to tag a helper function that takes a struct as its first argument with the ScriptMethod meta-data (optionally providing a new name) to "hoist" that helper function to be a method of the struct it operates on when wrapped for Python. Change 3927050 by conan.reis Source control - ensured that ISourceControlProvider::Execute(FConnect, EConcurrency, FSourceControlOperationComplete) delegate is called on initial connection even if it fails immediately. Modified Perforce, Git and Subversion source control providers #JIRA UE-55256 Change 3929268 by conan.reis - fixed case in Perforce source control code where the server available flag was set even when the server was not successfully connected - removed Perforce error message about file folders outside of the workspace client mappings - clarified comments for ISourceControlProvider::IsEnabled() and ISourceControlModule::IsEnabled() #JIRA UE-55254 Change 3931024 by Rex.Hill Expose FBX and Texture import to python Change 3931273 by Rex.Hill Hide re-import slate notification pop-up during python automated asset import Change 3931368 by Jamie.Dale Stopped bools coercing to numeric types in Python nativization Change 3931374 by Jamie.Dale Added support for struct math operator "hoisting" This allows you to tag a helper function that takes a struct as its first argument with the ScriptMathOp meta-data (providing a potentially semi-colon separated list of operators to map to) to "hoist" that helper function to be a math operator of the struct it operates on when wrapped for Python. Change 3932586 by Rex.Hill Removed file read into unused memory buffer during Fbx import Change 3934308 by Jamie.Dale Added a public interface for the Python plugin Very basic, just lets you query if Python is compiled in, and lets you execute Python commands like you would via the Output Log. Change 3935088 by conan.reis - Added info/warning and error message storage to all the source control operation structures so additional information can be made available. - Added ISourceControlOperation::GetResultInfo() which returns the modified control structures (mentioned above) with appended info/warning messages and error messages and implemented its use in all source control operations in Perforce, Git and Subversion. #JIRA UE-55257 Change 3936668 by Rex.Hill #jira UE-55985 Avoid re-allocation of memory buffer holding file bytes during asset import Change 3940596 by Rex.Hill #jira UE-55989 Optimize skeletal mesh import performance scaling Overlapping vertex check was O (N^2) 100k vertex mesh took ~15 seconds to perform overlap step now takes 0.023 seconds Change 3942629 by Rex.Hill #jira UE-55995 Read fbx file only once during import Fixes a memory leak of FbxScene and reduces wait time during import. Change 3942884 by Rex.Hill Python asset import can now customize destination asset name Change 3946278 by Jamie.Dale Added stricter conversion for math operator arguments PyConversion now returns FPyConversionResult rather than bool, which will tell you not only whether a conversion succeeded or failed, but also whether type coercion was applied during the conversion. This allows the operator stack evaluation to run a first pass looking for an exact argument match, before falling back to a coerced match if available. This allows operators to apply correctly to coerced types (eg, int vs float overloads). Change 3948455 by Jamie.Dale Added generic Tick function to FPythonScriptPlugin This can also handle init logic for after the engine is fully initialized Change 3948888 by Jamie.Dale Added settings for the Python plugin You can now define start-up scripts to execute once the engine is initialized, additional system paths for Python, and whether you want to enable developer mode (which will enable things like deprecation warnings). Change 3948982 by Jamie.Dale Fixed Python 3 build error caused by CObject being removed in Python 3.2 Change 3949614 by Francis.Hurteau Create a camera cut track from the camera switcher camera index animation curve when importing a fbx in sequencer #jira UEENT-1053 Change 3950829 by Rex.Hill Update error message to be more specific when ENGINE_API keyword is found before 'static' keyword for a UFUNCTION Change 3953452 by Jamie.Dale Fixed some dependencies Change 3953645 by Jamie.Dale Fixed Python parameter packing treating bool output paramers as potential return values void GetState(bool& OutState) would have previously triggered the code for packing output for a function that returns a bool. Change 3953850 by Jamie.Dale Fixed doc string generation for a function with multiple output paramters and no return value Change 3954279 by Jamie.Dale Initial support for exposing deprecated properties and functions to Python This handles properties and functions that are directly deprecated. We still need to handle the cases where they're renamed and a redirector is left. Change 3954922 by Rex.Hill Expose UnloadPackages to python Change 3955209 by Jamie.Dale Initial support for exposing deprecated classes to Python Change 3955248 by Jamie.Dale Added a way to load Unreal modules via Python unreal.load_module("modulename") Change 3955561 by Rex.Hill Expose asset export to python Change 3956068 by Rex.Hill Linux compile fix. Change 3960449 by Rex.Hill Fix automated test using bCombineMeshes Change 3960495 by Patrick.Boutot Add a temporary menu to show the MetaData of an asset. The menu will need to be updated to have a look and feel of the Detail View and support edition at one point. Change 3961599 by Rex.Hill Reduced peak memory during import of meshes related to duplicate vertex tracking Change 3962104 by Rex.Hill Disable import mesh overlapping corners memory optimization to because it can change uv generation Change 3962507 by Rex.Hill Fix uv generation Change 3965285 by Rex.Hill Add support for FBX export as ASCII #jira UE-56465 Change 3965287 by Rex.Hill Forgotten file, fbx export as ascii Change 3966772 by Simon.Tourangeau Fix MaterialExpressionFunctions for ExternalTexture support Change 3967014 by Jamie.Dale Added a way to get the CDO in Python Wrapped objects now have a get_default_object class method Change 3967151 by Jamie.Dale Added stats to track Python generation time Change 3968006 by Simon.Therriault Media Samples - Removed Locks and Min/Max SampleTime from queues - Added methods to fetch NextSampleTime and SampleCount in queues - Added MediaSource base class for players that want to be time synchronized #jira UEENT-948 Change 3969119 by Patrick.Boutot Add delay functionnality to MediaPlayer to delay the frame by some time. It will allow more than one player to be start at the same time, played at the same frame but offset in relation to each other. [CL 3972277 by Simon Tourangeau in Main branch]
2018-03-29 13:32:35 -04:00
#include "ISourceControlModule.h"
#include "SourceControlHelpers.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "Modules/ModuleManager.h"
#include "Framework/MultiBox/MultiBoxBuilder.h"
Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340) #lockdown Nick.Penwarden #rb none ========================== MAJOR FEATURES + CHANGES ========================== Change 3209340 on 2016/11/23 by Ben.Marsh Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h. Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms. * Every header now includes everything it needs to compile. * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first. * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h. * Every .cpp file includes its matching .h file first. * This helps validate that each header is including everything it needs to compile. * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more. * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there. * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible. * No engine code explicitly includes a precompiled header any more. * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies. * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files. Tool used to generate this transform is at Engine\Source\Programs\IncludeTool. [CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
#include "Widgets/SWindow.h"
#include "Widgets/Layout/SSpacer.h"
#include "Widgets/Layout/SWrapBox.h"
#include "Widgets/Images/SImage.h"
#include "Widgets/Text/STextBlock.h"
#include "Widgets/Layout/SUniformGridPanel.h"
#include "Widgets/Input/SMultiLineEditableTextBox.h"
#include "Widgets/Input/SButton.h"
#include "Widgets/Notifications/SErrorText.h"
#include "Widgets/Input/SCheckBox.h"
#include "EditorStyleSet.h"
#include "AssetToolsModule.h"
#include "AssetRegistryModule.h"
#if SOURCE_CONTROL_WITH_SLATE
#define LOCTEXT_NAMESPACE "SSourceControlSubmit"
namespace SSourceControlSubmitWidgetDefs
{
const FName ColumnID_CheckBoxLabel("CheckBox");
const FName ColumnID_IconLabel("Icon");
const FName ColumnID_FileLabel("File");
const float CheckBoxColumnWidth = 23.0f;
const float IconColumnWidth = 21.0f;
}
FSubmitItem::FSubmitItem(const FSourceControlStateRef& InItem)
: Item(InItem)
{
CheckBoxState = ECheckBoxState::Checked;
DisplayName = FText::FromString(Item->GetFilename());
}
void SSourceControlSubmitListRow::Construct(const FArguments& InArgs, const TSharedRef<STableViewBase>& InOwnerTableView)
{
SourceControlSubmitWidgetPtr = InArgs._SourceControlSubmitWidget;
Item = InArgs._Item;
SMultiColumnTableRow<TSharedPtr<FSubmitItem>>::Construct(FSuperRowType::FArguments(), InOwnerTableView);
}
TSharedRef<SWidget> SSourceControlSubmitListRow::GenerateWidgetForColumn(const FName& ColumnName)
{
// Create the widget for this item
TSharedPtr<SSourceControlSubmitWidget> SourceControlSubmitWidget = SourceControlSubmitWidgetPtr.Pin();
if (SourceControlSubmitWidget.IsValid())
{
return SourceControlSubmitWidget->GenerateWidgetForItemAndColumn(Item, ColumnName);
}
// Packages dialog no longer valid; return a valid, null widget.
return SNullWidget::NullWidget;
}
void SSourceControlSubmitWidget::Construct(const FArguments& InArgs)
{
ParentFrame = InArgs._ParentWindow.Get();
SortByColumn = SSourceControlSubmitWidgetDefs::ColumnID_FileLabel;
SortMode = EColumnSortMode::Ascending;
for (const auto& Item : InArgs._Items.Get())
{
ListViewItems.Add(MakeShareable(new FSubmitItem(Item)));
}
TSharedRef<SHeaderRow> HeaderRowWidget = SNew(SHeaderRow);
HeaderRowWidget->AddColumn(
SHeaderRow::Column(SSourceControlSubmitWidgetDefs::ColumnID_CheckBoxLabel)
[
SNew(SCheckBox)
.IsChecked(this, &SSourceControlSubmitWidget::GetToggleSelectedState)
.OnCheckStateChanged(this, &SSourceControlSubmitWidget::OnToggleSelectedCheckBox)
]
.FixedWidth(SSourceControlSubmitWidgetDefs::CheckBoxColumnWidth)
);
HeaderRowWidget->AddColumn(
SHeaderRow::Column(SSourceControlSubmitWidgetDefs::ColumnID_IconLabel)
[
SNew(SSpacer)
]
.SortMode(this, &SSourceControlSubmitWidget::GetColumnSortMode, SSourceControlSubmitWidgetDefs::ColumnID_IconLabel)
.OnSort(this, &SSourceControlSubmitWidget::OnColumnSortModeChanged)
.FixedWidth(SSourceControlSubmitWidgetDefs::IconColumnWidth)
);
HeaderRowWidget->AddColumn(
SHeaderRow::Column(SSourceControlSubmitWidgetDefs::ColumnID_FileLabel)
.DefaultLabel(LOCTEXT("FileColumnLabel", "File"))
.SortMode(this, &SSourceControlSubmitWidget::GetColumnSortMode, SSourceControlSubmitWidgetDefs::ColumnID_FileLabel)
.OnSort(this, &SSourceControlSubmitWidget::OnColumnSortModeChanged)
.FillWidth(7.0f)
);
ChildSlot
[
SNew(SBorder)
.BorderImage(FEditorStyle::GetBrush("ToolPanel.GroupBorder"))
[
SNew(SVerticalBox)
+SVerticalBox::Slot()
.AutoHeight()
.Padding(5)
[
SNew( STextBlock )
.Text( NSLOCTEXT("SourceControl.SubmitPanel", "ChangeListDesc", "Changelist Description") )
]
+SVerticalBox::Slot()
Copying //UE4/Fortnite-Staging to //UE4/Dev-Main (Source: //Fortnite/Main/Engine @ 3780923) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3780878 by Nick.Darnell UMG - Providing more information when the compile fails to find a bindable widget. Change 3780855 by Gil.Gribb UE4 - Fixed a linear search in EDL that caused performance problems for very large maps. Saves half the load time in FN-BR. Change 3780803 by Thomas.Sarkanen Dont create animation tasks for skeletal meshes that have no anim instance This avoids some wasted work for non-animated attachments, such as pickaxes #jira FORT-61523 - Don't create anim worker tasks if no AnimBP Change 3780741 by Yenal.Kal #jira FORT-60177 Fixed the bug where the anim branching points (begin and end) may be triggered twice incorrectly. Change 3780663 by Gil.Gribb UE4 - Batching for audio thread commands. Change 3780466 by Ben.Marsh Add error matcher for generic Microsoft errors (eg. 'cl : Command line error D8049 : command line too long to fit in debug record') Change 3779937 by Nick.Darnell UMG - Adding an accessor on UUserWidget to get the owning player state easier, since it's a common operation. Change 3779858 by Sam.Zamani #http use separate "-multihomehttp" instead of "-multihome" for routing http socket #jira FORT-61666 #tests none Change 3779288 by Michael.Trepka Changed FMacConsoleOutputDevice::Serialize to use FString's GetNSString() instead of converting the string using FPlatformString::TCHARToCFString to make it safer in case of garbage text passed in Data #jira FORT-59762 Change 3779062 by Mike.Fricker Merged CL 3731188 and CL 3733311 from //UE4/Dev-Editor. ---- Improve responsiveness of Open Asset dialog. On large projects, there's a noticeable delay when opening and searching/filtering assets. Stopwatch measurements on my machine (seconds for ~122,000 assets): before with this CL ctrl-P 1.4 0.45 search 1.8 0.55 CollectionManagerModule was the main culprit for search/filter slowness. Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation. Change 3778954 by Nick.Darnell Slate - Making the Horizontal and Vertical analog keys configurable in the navigation config. Tweaking how fast the navigation is with the analog stick, trying to tune the feeling. Change 3778896 by Ben.Marsh Separate FNameEntrySerialized from FNameEntry, rather than deriving from it. It has to be allocated differently, and many fields cannot be shared between the two. #jira Change 3778807 by Ben.Marsh Fix Tencent include paths not registering if workspace directory contains a space. Tencent include paths currently have a trailing backslash, and this is surrounded by quotes if the root directory contains a space. The backslash is interpreted as escaping the trailing double quote. #jira Change 3778686 by Luke.Thatcher Reduced impact of dynamic vertex buffer RHI stall in D3D12 - In most cases we can avoid the stall if the vertex buffer has never been used before. - Only when a buffer has an existing SRV do we need to stall. - Also, delete copy and move constructors of FD3D12ResourceLocation. Moving or copying an instance of this class leads to double free crashes, so this is now a compile error rather than a runtime crash. This saves an average of 2ms frame time in a StW lastperftest replay, with r.screenpercentage 10. #jira FORT-61390 Change 3778679 by Thomas.Sarkanen Fix Linux server crash - dont attempt to run threaded work in a single-threaded environment We dont attempt to run animation update work multi-threaded in the same conditions that we didnt attempt to run animation eval work previously. #jira FORT-61548 Change 3778591 by Ben.Woodhouse Add build config to FPSChart HTML output #jira FORT-56478 Change 3778175 by ben.marsh Remove code to trigger an ensure on Arxan guards. We already send analytics for this, and don't need this legacy path. There is a large number of incoming ensures with this callstack that are clogging up crash reporter. Will remove all the surrounding code in a later update to a development branch. #jira Change 3777750 by Chris.Gagnon - Slate now supports a CustomBoundary Navigation type wich allows a custom handler if the boundary is hit. - This provides the ability to have normal navigation while within the boundary and the custom function only on the boundary. - This differs from Custom which is a full override of the navigation behavior. Change 3777678 by Bob.Tellez #UE4 Fix a bug that was causing fastpath nodes in non-nativized BPs to not be fastpath Change 3776962 by Bob.Tellez #UE4 Fix warning about missing virtual destructor by making a struct final (like other RHICommands) Change 3776656 by Thomas.Sarkanen Fix notifies not getting fired in cases where AlwaysTickPose was set on skeletal mesh components This was causing AIs to get stuck in montage playback in some circumstances #jira FORT-61324, FORT-60558 Change 3776655 by Bob.Tellez #UE4 CIS fix after 3776629 Change 3776650 by Bob.Tellez Counting uplugin and uproject files as code changes so UGS will trigger code builds on checkins containing these files Change 3776649 by Nick.Darnell UMG - Fixing a rare crash when destructing a widget in the designer. It's trying to remove widgets from a half garbage collected panel. Change 3776629 by Bob.Tellez #UE4 Using a more efficient data structure for keeping track of visited nodes when verifying EDL. Change 3776328 by James.Golding Add command line option (-statnamedevents) for enabling named events Change 3776024 by Nick.Darnell Slate - Adding an accessor to SSafeZone to get the amount of padding that will be added, given some scale. Change 3775569 by Gil.Gribb UE4 - Fixed bugs with r.DelaySceneRenderCompletion Change 3775543 by Luke.Thatcher [XBOXONE] [~] Remove stall in D3D12 CreateRHIBuffer - Buffer update is enqueued as a task on the RHI thread instead of stalling the RHI thread for the duration of the update. Change 3775488 by Thomas.Sarkanen Prevented skeletal meshes that are not being ticked due to URO from dispatching tick tasks #jira FORT-61157 - Run anim update on worker, even if not visible Change 3775219 by Bob.Tellez #UE4 Dont SerializeThumbnails when calling savepackage while editoronly data is excluded (cooking). This saves a lot of memory while cooking Change 3774886 by Mike.Fricker Fixed occasional crash when backing out to lobby - Don't force DF data to be updated when the mesh isn't in the world or has no scene interface #jira FORT-60863 Change 3774767 by Ori.Cohen Fix race condition for creating statid in test configs Change 3774682 by Bob.Tellez #UE4 Don't bother clearing cached platform data during shutdown purge since there may be a lot of it and it takes a while to destroy it. Change 3774621 by Bob.Tellez #UE4 Move Tree rebuilding during cook from Serialize to PreSave to avoid building the tree multiple times for a single platform. Also properly clear out CacheMeshExtendedBounds. Change 3774201 by Gil.Gribb UE4 - Fixed rare crash caused by unmounting pak files. Change 3773920 by Gil.Gribb UE4 - Added experimental option r.StartPrepassParallelTranslatesImmediately which allows the parallel translate tasks from the prepass to start before we init shadows. Disabled by default. Change 3773896 by Thomas.Sarkanen Push non-rendered anim updates back onto the worker thread Now when meshes are set to EMeshComponentUpdateFlag::AlwaysTickPose, we optionally kick of a task to perform parallel update only (no evaluation). #jira FORT-61157 - Run anim update on worker, even if not visible Change 3773886 by Gil.Gribb UE4 - Reduced r.RHICmdMinCmdlistForParallelSubmit from 2 to 1. Change 3773882 by Gil.Gribb UE4 - Improved profiler markers when they are used without stats to cover the task graph and some things related to the parallel renderer. Change 3773461 by Gil.Gribb UE4 - Increased the granularity of the ParallelFor blocks for greater load balancing. Change 3773459 by Gil.Gribb UE4 - Adds TLS caches for MallocBinned2 to the Audio thread. Change 3773458 by Gil.Gribb UE4 - Added an experimental option to do the slate render before waiting for the rendering tasks. Change 3773011 by Robert.Manuszewski Header (uasset) and export (uexp) files will now be compared seperately when running cook commandlet with -diffonly to avoid situations where a mismatch in size of the header produces more differences between exports. + Renamed ini setting to ignore header differences from SkipHeaderDiff to IgnoreHeaderDiff Change 3772867 by Thomas.Sarkanen Nativization now correctly generates and builds code for "Client" builds Overall this is a bunch of hacks, but necessary for nativization to work at present. Once the cooker and UAT both have a concept of "Client" targets, this can be implemented properly. Instead of building to a "Client" directory, we build to "Game" for client-only platforms (like PS4, XboxOne) Also we need to add "Client" targets to the whitelist for the nativized assets plugin, as UBT still thinks it is building for "Client" #jira FORT-52823 - Nativizing Player Animation Blueprints Change 3772408 by Robert.Manuszewski Cook commandlet will now report full property name when running a diff against the existing cook (-diffonly) Change 3772359 by Thomas.Sarkanen Improvements to the Cpp backend to allow VC++ to compile nativized code more effectively Added a new scoped helper to wrap areas of the code in PRAGMA_DISABLE_OPTIMIZATION. This helps with functions that are large tables or long lists of initializations. Split anim node initialization up into functions, called from a seperate function dedicated to initializing anim nodes. This splits the 5k+ line constructor into mutiple smaller functions, which the compiler has no problems with. Overall (along with splitting up the anim BP into functions in the asset) this reduces compilation time for the worst-case compilation unit from ~11m 40s to ~2m 32s. #jira FORT-52823 - Nativizing Player Animation Blueprints Change 3771975 by Zak.Middleton Fix character proxies doing up to two floor check when only rotation changes. Add some optional verbose logging to FindFloor() and ComputeFloorDist(). #jira FORT-61134 Change 3771421 by Ori.Cohen Fix CIS Change 3771052 by Robert.Manuszewski Package diff improvements (-diffonly mode for cooker). Exposed max diffs to report to ini and added the ability to suppress header differences reporting as they are usually a result of differences in exports anyway. Change 3771039 by Bob.Tellez #UE4 Allowing use of -FPS in PGO profile builds Change 3770747 by Ori.Cohen Added missing stat named events for anim bp Change 3769616 by Arciel.Rekman UBT: Use response files for compiler when compiling for Linux. - Some command lines are too long when cross-compiling on Windows, which is a problem for non-unity builds (or local changes that result in exclusion of checked out files from the lumped units). Change 3769457 by Gil.Gribb UE4 - Added eviction to r.DoLazyStaticMeshUpdate. It just removes 10 prims a frame in a rolling fashion. Change 3769136 by Michael.Noland Engine: Improve IsServerDelegateForOSS to allow it to use the play world during PIE even if no context was passed in Change 3768736 by Robert.Manuszewski More debug info for ensure in FLinkerSave when a name that has not yet been mapped is being serialized #jira FORT-60943 Change 3768634 by Robert.Manuszewski Small optimization to FEDLCookChecker::Verify function Change 3768603 by Robert.Manuszewski Merging CL #3766740 by Steve.Robb TMultiMap::Append added. Change 3768586 by Ben.Woodhouse csv profiler screen message Change 3768506 by Thomas.Sarkanen Duplicating CL 3764661 from Paragon: Only update Children attached to Sockets in USkeletalMeshComponent::PostBlendPhysics(). Saves ~20% of STAT_UpdateChildTransforms and ~10% of STAT_UpdateLocalToWorldAndOverlaps in 5ofEach_Dusk_vs_Dusk automation test. #jira OR-46341 #tests LaneMinionFXTests, monolith w/ full teams. Change 3768504 by Thomas.Sarkanen Duplicating CL 3758315 from Paragon: Optimized PostAnimEvaluation when URO is skipping a frame with no interpolation. Skip unnecessary work. PreEvaluateAnimation() is now only called if we're about to evaluate anims. PostEvaluateAnimation() is also called only if we have evaluated animations. Therefore PostEvaluateAnimation() has been pulled inside of PostAnimEvaluation() instead of FinalizeTransforms. Added a call to ConditionallyDispatchQueuedAnimEvents() in the event that we're not calling PostBlendPhysics because we have not evaluated or interpolated anims. Added missing call to PostEvaluateAnimation() for PostProcessAnimInstance. #jira OR-46341 #tests minion FX perf map, lane minion test map, monolith match with 2 full teams. Change 3768097 by Bob.Tellez #UE4 Fix non-editor CIS Change 3767957 by Bob.Tellez #UE4 Fix an issue that was causing FullLoadAndSave to fail to cache platform data for textures that were created by landscape on mobile and another issue that caused parallel saving to fail in landscape (when cooking for mobile targets) Change 3767906 by Mike.Fricker Add Blueprint functions to query parameters from MIC - GetScalarParameterValue - GetTextureParameterValue - GetVectorParameterValue MIDs already had these functions, but MICs did not. Change 3767737 by Max.Preussner Engine: Fix for external textures referenced by a material before being associated with a media player never having their uniform expressions recached #author jack.porter #jira FORT-59777 Change 3767735 by Bob.Tellez #UE4 Setting Opened to false in FOutputDeviceFile::TearDown so if the device file gets initialized again it will do the same initialization logic as the first time. #jira FORT-60918 Change 3767244 by Ethan.Geller #jira FORT-60885 Merge in fix for memory leak from 4.18.1. Change 3766567 by Marc.Audy Fix initialization ordering warnings Change 3766443 by Jian.Ru Submit PSO locking fix again as it has passed local tests Change 3766362 by Ori.Cohen Added the ability to get concurrent captures in Test configurations without having to turn full stats on Change 3766277 by Marc.Audy Shrink Skinned and Skeletal Mesh Component, FBodyInstance, and UBodySetup Change 3766275 by Marc.Audy Better pack UTexture* classes Change 3766272 by Thomas.Sarkanen Fixes to enable auto-nativization for animation blueprints For blend profiles in particular, I've added subobject support to the fake import table building for nativized assets: - In FEmitterLocalContext::FindGloballyMappedObject, if we dont find the referenced asset then we traverse the object's outer chain if it is a subobject. We add it to UsedObjectInCurrentClass if we find its outer. - Updated the structure used to build the fake import table to include a specified outer. Beforehand we assumed that all objects referenced by the import table were 'top-level'. - Updated the fake import table building code in FLinkerLoad::CreateDynamicTypeLoader() to use the new specified outer if found. This asserts if it couldnt find the outer in the already-parsed dependencies (as it reverse-iterates). If in the general case thius turns out to be a problem we can move this to a two-pass system. Disabled fast-path optimization when running a native anim BP, as native code is faster! #jira FORT-52823 - Nativizing Player Animation Blueprints #jira FORT-57378 - Perf optimization: animation blueprint improvements Change 3766215 by Marc.Audy Shink FFromatContainer from 88 bytes to 24 by storing in TSortedMap instead of TMap Change 3765664 by Michael.Noland Engine: Add support for sets to FJsonObjectConverter::JsonValueToUProperty Change 3765624 by Marc.Audy Create helper macro in Archive.h for encapsulating needed steps for serializing a bitpacked boolean Change 3765200 by Nick.Darnell Slate - Fixing a memory leak in the invalidation panel. It never cleared out the cached textures and materials it kept alive during retention. Change 3764881 by Wes.Hunt Fix FApp::Get/SetIdleTimeOvershoot. It was overwriting IdleTime, which made FrameTimeWithoutSleep look like FrameTimeWithSleep. #jira FORT-60585 #review-3764882 @arciel.rekman Change 3763872 by Max.Chen Sequencer: Set default completion mode for all sections to project default. Copy from Dev-Sequencer #jira UE-49480 Change 3763871 by Max.Chen Sequencer: Add config for default completion mode for movie scene sequences. The default for level sequences is RestoreState. All others, such as UMG are set to KeepState. Copy from Dev-Sequencer #jira UE-49480 Change 3763810 by Gil.Gribb UE4 - remove some init timing spew in programs (i.e. UHT) Change 3762939 by Robert.Manuszewski Removing all locks from FEDLCookChecker to improve SavePackage performance Change 3762851 by Bob.Tellez Duplicating CL#3740778 from //UE4/Dev-Editor Fixed issue with content browser column sorting #jira UE-49460 Change 3762660 by Bob.Tellez #UE4 Fix a few parallelsave threading problems. Change 3761861 by Marc.Audy Fix archive complaints about bitfield Change 3761802 by Marc.Audy Pack FTimeline, FHitResult, FAnimUpdateRateParameters, FMeshBuildSettings Change 3761299 by Matt.Kuhlenschmidt Fix levels not being lockable/unlockable if they are not checked out #jira FORT-60086 Change 3760422 by Bob.Tellez #UE4 Stop caching or clearing platform data when saving concurrently. This was causing threading problems in materials. Change 3760113 by Jian.Ru Back out changelist 3759715 as it causes a crash on UGS autotest Change 3759761 by Jian.Ru Clean up some debug comments Change 3759715 by Jian.Ru Removing excessive locking when accessing PSO caches. Change 3759285 by Nick.Darnell Editor - Fixing the length of the datatable row dropdown in the editor. Change 3758334 by Alexis.Matte Fix a crash when importing morph target there was a unsync between some buffer depending on the import options #jira UE-52319 Change 3758332 by Ben.Marsh Fix output subfolder being appended twice when generating project files. Causes incorrect command line when launching from Visual Studio. #jira Change 3758215 by Brian.Bekich Make Tint property of FSlateBrush NotReplicated now that it is WITH_EDITORONLY_DATA so that cooked clients can connect to uncooked servers Change 3757702 by Bob.Tellez #UE4 Fix -NoConcurrentSave cook option in FullLoadAndSave Change 3757545 by ben.marsh Suppress Arxan warning about being unable to install a default guard at it's default location. Change 3757452 by Aaron.McLeran #jira FORT-59675 Client Crash in __delayLoadHelper2() Fixing build error on linux. Change 3757389 by Hongyi.Yu Fixed the crash in UEditorEngine::CheckForWorldGCLeaks() when load a level (level A), PIE, load a sublevel of level A and then load another level. #jira FORT-58283 Change 3757229 by Aaron.McLeran #jira FORT-59675 Client Crash in __delayLoadHelper2() Change 3757077 by Max.Preussner MediaAssets: Fix for media texture crashing if media player is generated from GC clustered blueprint #jira FORT-59774 #jira UE-51943 #tests none Change 3756854 by Mike.Fricker Fix "double-delete" crash when using level streaming - Backed out unintentional network checksum change! Change 3756790 by Bob.Tellez #UE4 Fix inconsistency with how FSoftObjectPtr case is managed between FLinkerSave and FArchiveSaveTagImports, which would cause a cook ensure under some circumstances Change 3756639 by Arciel.Rekman Pool memory (only 64KB allocations) on servers (FORT-60342). - Has a fixed cost of 1GB virtual memory usage. #jira FORT-60342 Change 3755995 by Alexis.Matte Fix crash when importing morph target with "built in" tangent option #jira UE-52319 Change 3755896 by Arciel.Rekman Remove unnecessary switch for profiling (part of FORT-58878). - -fno-omit-stack-pointer is only needed when getting callstacks for perf. #jira FORT-58878 Change 3755711 by Mike.Fricker Fix "double-delete" crash when using level streaming - Initialize network GuidCache entries as soon as Guids are registered on the server so that we can fill them out with valid information before the object is destroyed. Fixes issues when a guid is exported for the first time to send a destroy to clients. (from RyanG) Change 3755701 by David.Ratti FObjectReplicator no longer a GCObject since adding/removing from the global GCObject list is too slow. Managing FObjectReplciators's object references at the NetDriver level now. #jira FORT-60317 #review-3755702 @Ryan.Gerleve Change 3754928 by Arciel.Rekman Linux: add LTO support and more. - Adds ability to use link-time opitimization (reusing current target property bAllowLTCG). - Supports using llvm-ar and lld instead of ar/ranlib and ld. - More build information printed (and in a better organized way). - Native scripts updated to install packages with the appropriate tools on supported systems - AutoSDKs updated to require a new toolchain (already checked in). - Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089 #jira FORT-58878 Change 3753986 by Ben.Zeigler #jira UE-45505 Fix issue where FCoreUObjectDelegates::OnAssetLoaded was being called from an inner loop inside EndLoad. Maps would register components from that callback, and if those registers started their own loads, those objects would be returned in a partially loaded state. We now defer the asset loaded callback to the very end of the loop so recursive loads work properly Change 3753274 by Ben.Marsh Fix blank lines in errors and warnings being omitted from notification emails. #jira Change 3753175 by Thomas.Sarkanen Fix hang in animation editor menus Sound waves were being loaded by the visibility delegate for the 'play' button overlay. This caused major hangs as the ogg compressed data was built on the fly. Handled the unloaded asset case in the various delegates. Also made the menu larger, as picking a sound wave was all but impossible when you couldnt even see one in the list. #jira UE-52271 - Persona menu option locks up editor Change 3752887 by Nick.Darnell Slate - Adding automatic invalidation to a few more widgets that were found lacking when adding or removing children. Change 3752785 by Marc.Audy Avoid doing any work to evaluate streaming volumes if there are no player controllers using streaming volumes Change 3752185 by Ben.Marsh Reduce cook time regression caused by correcting package names to match case on disk (to fix deterministic cooking problems). Switched to use IPlatformFile::GetFilenameOnDisk(), and improved performance of FWindowsPlatformFile::GetFilenameOnDisk() by using GetFinalPathNameByHandle() instead of recursively searching up the directory tree. #jira Change 3751813 by Ben.Marsh Improve parsing of diagnostics for deterministic cooking test. Now allows multiple lines in the generic EC error/warning matcher if indented more than the first line, and skips over empty lines. #jira Change 3750413 by Ben.Zeigler Fixes for cook save performance regressions. Add GetAllMarks to object and use that to dramatically reduce contention for the object mark annotation. Implement ShouldLoadForServer/Client directly on some core classes to stop it from calling the slow generic one Fix issue where refreshing tags for asset registry would do a very slow array delete/add Improve speed of redirectcollector, there's no need to force-rehash the soft object path list as the remove handles it conditionally Change 3750014 by Lina.Halper - duplicate change from following changelists CL 3669273 - delete all tracks option - allow to opt out on bone track importing - fixed pose preview for fullbody to select weights that has pose from asset. CL 3672170 Remove track support for Animation Blueprint Library This is required for facial pose retargeting Change 3749714 by Brian.Bekich Back out changelist 3748287 #jira FORT-60125 Change 3749377 by Robert.Manuszewski Improved log formatting for reporting deterministic cook issues. #jira FORT-59919 Change 3749360 by Robert.Manuszewski Improved performance of -diffonly mode for cook commandlet for assets with hundreds of thousands of differences. #jira FORT-59919 Change 3748746 by Hongyi.Yu Fixed compiling error in Automation project #jira FORT-59621 Change 3748530 by Mike.Fricker Fixed non-determinism of landscape grass across platforms/compilers This causes bushes to be located in different places depending on what platform you were playing on. 1) Random number reseeds were happening as part of function arguments to FVector(), but function argument evaluation order is unspecified, and behaved differently on Consoles/Mac/Windows. Fixed this bug. 2) Strings used for foliage CRCs could use different character sizes on different platforms. Now we always use ANSI. 3) Strings used for CRCs could have possibly have different case. Now forced lowercase. #jira FORT-60109 Change 3748471 by Zak.Middleton Added stats to NetDriver TickFlush and stats gathering within that function. Change 3748287 by Brian.Bekich Adding net.MaxStringSerializationSize to cap maximum string read from network, default to 4096, used by FNetBitReader Deprecating MAX_STRING_SERIALIZE_SIZE in favor of the cvar FInBunch defaults to prior behavior if cvar is 0 UPackageMap::SerializeName and UPackageMapClient::SerializeNameAsString will always cap at NAME_SIZE Check for path name serialization error before tryng to read checksum #jira FORT-57974 Change 3747980 by Bart.Hawthorne In Oodle, only generate and write dictionaries on Windows, Mac, and Linux Change 3747642 by Gil.Gribb Fix CIS Change 3747635 by Zak.Middleton Avoid string alloc on every ServerMove() call on the server. Change 3747560 by Gil.Gribb UE4 - Fixed XBox and Windows thread priorities. Only 2 though -2 seem usable and some of the old values were being ignored. Change 3747548 by Gil.Gribb UE4 - Changed thread pool to be TPri_SlightlyBelowNormal so that they will not preempt HP task graph tasks. Change 3747544 by Bart.Hawthorne When detecting if Oodle is installed, use the newest version instad of the oldest one. Change 3746440 by Robert.Manuszewski Dterministic cook issues reporting improvements - Huge performance improvements - Added new metric to the summary: NumberOfDifferencesInPackages - Diff stats have their own section now (Package.Diff) - When running with -diffonly there commandlet will not log the Warning/Error summary anymore - Callstacks are no longer logged with instruction addresses - Because callstacks are no longer logged with addresses I can collapse them for structures that otherwise would be split into multiple separate callstacks - Callstacks, Serialized Object and Serialized Property are now indented - Each asset is capped at 5 entries. If there's more differences, they'll be logged as single warning. - Replaced \r\n with \n in the callstack log to make it work better with EC #jira FORT-59919 Change 3746426 by Gil.Gribb UE4 - Tuned dispatch in the deferred renderer. Added r.DoPrepareDistanceFieldSceneAfterRHIFlush and defaulted it to on. Change 3746348 by Mike.Fricker Added new CVars to toggle level streaming behavior - No effective change to engine yet. The defaults values enable the same default behavior. - New CVar: "s.ForceGCAfterLevelStreamedOut" (Whether to force a GC after levels are streamed out to instantly reclaim the memory at the expensive of a hitch.) - New CVar: "s.ContinuouslyIncrementalGCWhileLevelsPendingPurge" (Whether to repeatedly kick off incremental GC when there are levels still waiting to be purged.) - New CVar: "s.AllowLevelRequestsWhileAsyncLoadingInMatch" (Enables level streaming requests while async loading (of anything) while the match is already in progress and no loading screen is up) Change 3746127 by Gil.Gribb UE4 - Slight tweak to more agressively batch occlusion queries. Change 3746111 by Cecil.McRae Change 3745681 by Bob.Tellez #UE4 Prevent attempting to execute a remote process to get the metal shader compiler version if no remove process machine has been configured. (Fixes a warning) Change 3745631 by Matt.Kuhlenschmidt Fix details panel crash after compiling blueprints that have edit conditon properties Change 3744544 by Gil.Gribb UE4 - Downgraded a fatal error to a warning. Example: Found package without a linker, could find SceneComp in /Game/AIDirector/AIDirector_Fortnite, but somehow wasn't finished loading. This is a sort of cook mismatched caused by the fact that all PS4 cooks have server-only data in them. #jira FORT-59879 Change 3744419 by Matt.Kuhlenschmidt Fix opening color picker causing values to change. Was due to conversion between srgb and linear color. Change 3744270 by Ben.Marsh Merging change to include deterministic cooking summary from Dev-Core (CL 3743182). #jira FORT-59919 Change 3743621 by Guillaume.Abadie Fixes subsurface profile fallback to lit shading model when Opacity == 0, introduced by 3447144. #jira UE-51569 Change 3743403 by Gil.Gribb UE4 - Merged lockfree / taskgraph fix from //UE4 (CL 3732262) Change 3743392 by Gil.Gribb Merged IO fixed from //UE4 (CL 3641155) Change 3743376 by Gil.Gribb UE4 - Added r.WarningOnRedundantTransformUpdate to produce warnings on redundant transform updates. Change 3743372 by Gil.Gribb UE4 - Added a stat for distance field verification...which takes a very long time, but does not affect test or shipping config. Change 3743030 by Bob.Tellez #UE4 Revert some code the was accidentally merged to UE4Main #jira UE-52032 Change 3742611 by Josh.Markiewicz #UE4 - fix for crash in destructor probably related to the freeing of memory via default destructors AFTER CefShutdown() has been called #tests crashes before, no crash after (not sure if it was a 100% crash but this seems better regardless) Change 3742187 by Nick.Darnell Slate - Adding a new optional parameter to direct routing for the widgets under the cursor in Slate Application. Essentially ProcessReply occasionally needs to know the widgets under the cursor, the previous implementation, just used the routing path, this results in missing sending mouse leave messages to widgets under the cursor when dragging begins, which often left things with hover effects in bad states. Change 3742053 by Michael.Trepka Copy of CL 3713881 Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets. #jira UE-31093 Change 3742050 by Michael.Trepka Copy of CL 3711085 Reenabled UBT makefiles on Mac Change 3741924 by Josh.Markiewicz #UE4 - delete EpicSurvey module - working toward engine/plugins/online removal from game branch Change 3741865 by Nick.Darnell UMG - Fixing a High DPI bug that wasn't scaling the offset for DragDrop widgets when using In-Window rendering that games depend on for DragDrop effects. Change 3741442 by Ryan.Gerleve Fix initialization order warnings Change 3741370 by Ryan.Gerleve Back out changelist 3689397. The memcpy in one of the FInBunch constructors is not portable and causes this change to break networking on Android. Change 3740914 by Peter.Knepley Restore player name obsfuscation Change 3740828 by Marc.Audy Dynamically create FKey if the char code is unknown #jira FORT-59735 Change 3740811 by Ben.Marsh UAT: Fix double-spacing of lines output by Utils.RunLocalProcess, and use a non-local function to output them for more readable logs. #jira Change 3740328 by Bob.Tellez #UE4 Fix FullLoadAndSave cook method Change 3740327 by Bob.Tellez #UE4 Minor movie scene cooking improvements Change 3740280 by Bob.Tellez #UE4 Fix shipping config CIS Change 3740232 by Bob.Tellez #UE4 Gave OodleHandlerComponent a short name so it doesnt hit maxpath length issues on build machines. Change 3740209 by Nick.Darnell UMG - Finishing the ability to add a "Custom" method for Navigation. Currently the editor implementation leaves me wanting, but it works for now. You can put the name of a function to call (needs to match a signature that returns a UWidget). Change 3740207 by Nick.Darnell Slate - Navigation attempts when the user claims they are doing custom or explicit, if those methods don't return a valid widget, we don't treat it like the attempt failed and fallback to default navigation methods. Instead we use it as a trigger to indicate that no navigation should occur and treat it like a stop. Change 3740189 by Bob.Tellez #UE4 Fix mouse cursor position being set when hovering over the viewport in windowed mode despite not having focus Change 3740171 by Marc.Audy Fix merge issue causing compile error for AutomationTool Change 3739270 by Ben.Woodhouse Use background task graph affinity on platforms that implement it (e.g. XB1). Saves 8ms on GC spikes and ~0.5ms on the renderthread #jira FORT-56961 Change 3739244 by Ben.Woodhouse -statunit commandline option Change 3738920 by peter.knepley Fix issue where simulated proxies had bad crouch state when re-entering relevancy Change 3738904 by Gil.Gribb UE4 - Moved audio decompression tasks to the background thread pool. Controlled by a cvar AudioThread.UseBackgroundThreadPool, which defaults to 1. Change 3738378 by Ori.Cohen Added better profiling for scene query hitches Change 3736984 by Ben.Woodhouse Dummy merge: Accept main version of windowsrunnablethread.h, so Windows gets the new priorities #jira FORT-56700 Change 3736754 by Zak.Middleton Remove engine hacks of K2_SetActorLocation etc for pending engine merge. Will replace with delegates on transform updates for relevant classes. Change 3736282 by Hongyi.Yu Don't check target file while doing iterative shared prebuild cooking. #jira FORT-58911 Change 3736109 by Michael.Trepka Updated FMallocLeakDetectionProxy to not use a critical section internally on top of thread safety measures performed by FMallocLeakDetection and the underlying FMalloc implementation. The improvements are biggest on Mac, in particular in low framerate situations, as Metal RHI uses malloc heavily on multiple threads, but it's also a nice 10% improvement on a high end PC. #jira FORT-55309 Change 3735765 by Ben.Woodhouse Fix GTSynctype logic when vsync is disabled. This was breaking profiling Change 3734436 by Marcus.Wassmer More reliable Aftermath data. #jira FORT-45518 Change 3734103 by Bob.Tellez #UE4 Exposing GetRefPosePosition on SkinnedMeshComponent to BPs Change 3733985 by Saul.Abreu #jira FORT-58816 "Special case zero-width space in the text shaper to avoid fonts rendering the fallback glyph" - Jamie Dale Needed to workaround an issue with guillemets (weird arrow quotes). Change 3733922 by Brian.Bekich Setting max serialization size in FNetBitReader to prevent runaway string reads from replicated object paths Check for path name serialization error before tryng to read checksum #jira FORT-57974 Change 3733850 by Max.Chen Sequencer: Return unhandled only if not dragged. This fixes a bug where dragging in the track area would sometimes leave the handled state with the time slider controller and not allow you to pop up a menu with the movement tool. #jira FORT-56092 Change 3733299 by Ethan.Geller #jira FORT-58943 Handle corner cases for repeated calls to precache buffers. Change 3732907 by Gil.Gribb UE4 - Removed slow HLOD code from frustum cull loop and set things up at AddPrim time instead. Saves 1-3ms. Change 3732728 by Robert.Manuszewski Fixing a crash when dumping stats with massive callstacks #jira FORT-58901 Change 3732438 by Marc.Audy When a client informs the server that it has loaded a streaming level force a net update on all dormant actors that have at one point replicated data to relevant clients and ensure that the connection's destroyed startup/dormant actors list is properly populated. #jira FORT-56997 Change 3730413 by Lukasz.Furman fixed PlayerName encryption key #jira FORT-59066 Change 3729588 by Bob.Tellez #UE4 Only calling FixupData on load. Fixes crash during parallel saving. Change 3729475 by Marc.Audy Fix missing ; Change 3729444 by Marc.Audy Fix cases where GetWorld() being called multiple times per function Change 3729143 by Hongyi.Yu Added support to extract pak files to mount point. - Extract with "-ExtractToMountPoint" when extracting pak in DiffCookedContent() #jira FORT-58635 Change 3728981 by Nick.Darnell Slate - Fixing a bug with Slate turning on statid tracking even when the slate verbose stats are not being used. Change 3728838 by Zak.Middleton Compile out GetWorld() call in check() in Test and Shipping builds, to avoid skewing profiling. Change 3728604 by Jian.Ru Submit one render command rather than many in FScene::UpdateParameterCollections Change 3728434 by Marc.Audy PostSignificance should always fire when unregistering regardless of whether this is the last object in the tag. Change 3728427 by Gil.Gribb UE4 - reduce stat overhead when not collecting stats. Change 3728197 by Marc.Audy Properly call post significance on initial registration if the post significance type is sequential Change 3726266 by Gil.Gribb UE4 - Force HISMC trees to rebuild during cook. This allow us to change parameters without resaving maps. Change 3724501 by Marc.Audy Fix initialization order Change 3724411 by Ben.Woodhouse Point light shadow rendering optimization - Made per-triangle culling take Z into account. In FortGPUTestbed (with grass shadow casting enabled), GSVerticesOut reduced from 464k to 234k. On xbox one, a pointlight GPU cost reduced from 6.7 to 4.1ms. On PS4, GPU cost went from 2.3 to 1.9ms. #jira FORT-58921 Change 3724367 by Chad.Garyet Downgrading lock warning about still waiting to a message instead of a warning. Change 3723903 by Max.Preussner MediaAssets: Merged workaround for uninitialized media sound waves from 4.17 #jira FORT-57260 Change 3723134 by Lukasz.Furman added deprecation for PlayerState.PlayerName, it should remain accessible only through Get/Set functions to control obfuscation Change 3722955 by Jian.Ru Fix a compilation warning #jira FORT-58749 Change 3722667 by Luke.Thatcher [BUILD] [!] Fix PGO failures on build machines. - The strings "Failed" and "error" are always treated as build failures, even if the build task returns a success code. - Failure to reserve a device should not be fatal. #jira FORT-58001 Change 3722291 by Lukasz.Furman restored public access to PlayerName for now, current code will be going through accessor Change 3721012 by Alicia.Cano chunk title file generation #jira FORT-53605 Change 3720961 by Marcus.Wassmer Fix bad UVDensities on objects causing texture streaming to fail. Better fix will come with the engine merge. #jira FORT-58240 Change 3719318 by Lukasz.Furman replaced old branch name assertions Change 3719047 by Lukasz.Furman added branch name assertion to core headers to avoid duplicating it Change 3718499 by peter.knepley Fix for a crash when calling FSlateApplication::Get().FindPathToWidget in response to a widget destructing. Widget must be invalidated before the reference is cleared or else someone else might assign a shared reference to it during destruction. Change 3716965 by Alicia.Cano No sound was playing for Android. #jira FORT-58302 #android Change 3715746 by Ben.Marsh Hide Arxan warnings about PDB files not being present. #jira Change 3715172 by Bob.Tellez #UE4 FullLoadAndSave now does SavePackage in parallel. Change 3715055 by Bob.Tellez #UE4 Fix to actually use the precached streaming audio DDC data when cooking. Change 3714130 by Bob.Tellez #UE4 Core changes to allow SavePackage to be done concurrently Change 3714099 by Bob.Tellez #UE4 Pull the logic to initialize and uninitialize the physics scene for a world out into separate functions Change 3713145 by Ben.Marsh Disable an Arxan warning in EC. #jira FORT-56926 Change 3712904 by Ben.Woodhouse Fix for gpu profiler crash on pre-maxwell nvidia (or when r.gpuprofiler is set to false) Change 3712693 by Ben.Woodhouse Workaround for PS4 flip thread crash in dev builds. Caused by the flip thread/offset threads being shutdown before being initialized. The high level logic is now robust to that. We should fix the PS4 RHI ideally, but this is simpler for now. #jira FORT-58409 Change 3712544 by Ben.Woodhouse add missing skylight diffuse gpu stat Change 3712515 by Ben.Woodhouse CSV profiler GPU and pre-declared stat support - refactor the GPU profiler so it's no longer dependent on the stats system and can work in Test builds - add support for pre-declared CSV stats, using FNames (these are required for GPU stats) - add DECLARE_GPU_STAT macro which handles STATS and CsvProfiler declarations Note: still a few issues to resolve with GPU stats: these randomly go to 0 at times during a replay on XB1, the GPU total is lower than the stat unit number, and the unaccounted stat is too large due to missing stats Change 3712297 by Mike.Fricker Fixed huge client hitch when applying changes to in-game options - Every component was being re-registered when r.SimpleForwardShading was updated by the scalability system, even if the value hadn't changed. Now, it only re-registers components if the value changes on the fly. (e.g. when turning Shadows off or on PC) #jira FORT-57661 Change 3711501 by Ben.Marsh Fix build failure on Linux. #jira Change 3710962 by David.Ratti Add SCOPE_CYCLE_UOBJECT for SourceObject of GE - this will tell us what weaponw as applying the GE Change 3710602 by Marc.Audy Only create MIDs as a child of the calling object if construction script is running Change 3710421 by Ben.Woodhouse Bring over a couple of XB1 rendering fixes from 4.18 3692692: Integrate XB1 translucent lighting fix 3674543: D3D12 : Fix bug with non-CS version of UpdateTexture3D caused by bad depthstride. This was causing corruption in the indirect lighting cache #jira UE-49416 Change 3710338 by Marc.Audy Fix Json <-> Property converter to handle maps with struct keys Merged from CL# 3521195 #jira UE-46616 Change 3710226 by Bob.Tellez #UE4 Increase TaskGraph stack size in editor builds since. SavePackage uses a deep callstack which exceeds the 384 memory limit Change 3709046 by andrew.grant Added ALLOW_CONSOLE_IN_SHIPPING define that Target.cs files can set to turn on console in shipping builds #jira FORT-57180 Change 3709040 by andrew.grant Fixed issue where this could fail if a messagebox was spawned early during initialization Change 3708830 by Bob.Tellez #UE4 Commandline switches/options are no longer detected when found between quote characters. This causes options from not being incorrectly detected when passed in as a value from another options. i.e. -Option="-log" no longer causes -log to be picked up. This removes the syntax of specifying parameters like "Option=Value", which should now be replaced with -Option="Value" #jira FORT-57833 Change 3708826 by Bob.Tellez #UE4 Removed needless calls to RegisterSerializedShaders in the saving codepath of material serialization. This function is only relevant when loading shaders. Change 3707905 by Ori.Cohen Fix attached skinned mesh never being unhidden due to scale 0 and render tick optimization #jira UE-51485 Change 3706450 by Chris.Bunner Removing illegal material set on decal component in GameplayStatics. Set a related JIRA, this doesn't actually fix the issue but contributes. #jira FORT-51597 Change 3706223 by Marc.Audy Shrink UPackage class size substantially Change 3706221 by Marc.Audy Store CustomVersions in array rather than set Change 3705798 by Bob.Tellez #UE4 ShadowDepthVertexShader.usf fix to fix Mac cook. Change 3705613 by Uriel.Doyon Texture streaming integration from Main. #jira FORT-57376 Change 3705137 by Michael.Trepka Fixed MetalRHI warning when compiling without MALLOC_LEAKDETECTION defined #jira FORT-55309 Change 3704310 by Marcus.Wassmer fix d3ddebug error with shadowcasting pointlights also suppress spammy d3ddebug data about texture debug names #jira FORT-58063 Change 3703477 by Marc.Audy Minor tweak to keep Padding on one cache line. Change 3703449 by Michael.Trepka Don't use parallel RHI execute on Mac if MALLOC_LEAKDETECTION is enabled as this combination affects performance significantly due to mutex locking in FMallocLeakDetectionProxy #jira FORT-55309 Change 3703217 by Marcus.Wassmer Update PS signatures to match VS. Fixes crashes when running witih -d3ddebug which we need to catch real problems #jira FORT-58021 Change 3702926 by Aaron.Eady #JIRA na Engine Code Improvements (that this project doesn't have yet); Added engine code for drawing a debug 2D box. Added engine code that allows for Keyboard Shortcuts to be special characters like backslash \. -- Code -- DrawDebugHelpers: DrawDebugCanvas2DBox() - Added this to allow us to draw debug 2D boxes. RemoteConfigIni: SpecialCharMap - Updated this TCHAR* property to be in the right order so you can use special characters like backslash as keyboard shortcuts. Change 3701976 by Michael.Noland Editor: Rewrote CallInEditor support and promoted it so it can be used on functions in any class, not just blueprints derived from AActor: - CallInEditor used on native UFUNCTION() declarations will now show up without having to make a BP subclass - CallInEditor can now be used as a top-level keyword in the UFUNCTION() declaration (e.g., UFUNCTION(Category=CoolCommands, CallInEditor)) - Now shows each function as a separate button, placed in the category associated with the function - The button strip entry is now searchable by function name or tooltip - Prevented operating on functions that have parameters or return values, which would crash before - Removed the duplicate copies of properties placed in the Blutility section - Added a scoped transaction around CallInEditor execution - Allowed functions to be marked as CallInEditor in addition to custom events (currently we don't allow editing category or tooltip on custom events...) Editor: Moved Experimental/EarlyAccessPreview details customizations up to UObject so it can be used on any class, not just actors/components Edigrating CL# 3374995, 3375121, and 3375308 from Dev-Framework to FN main Change 3700836 by Bob.Tellez Modified commandline parse function, to detect when it is incorrectly parsing a parameter, from within another parameters value (not exhaustive). For example, this commandline only contains the parameter ParamA. It should not be possible to parse ParamB, as it is part of ParamA's value: -ParamA="-ParamB=Value" #jira FORT-57833 Change 3700821 by Bob.Tellez Merging CL#3461205 from //UE4/Dev-Core Fixed parameter parsing so that arguments are not parsed if not preceeded by a whitespace (for example "-Log" was parsed in "TM-Log") #jira UE-33790 Change 3699584 by Chad.Garyet Upping the timeout on symstore to half an hour instead of 15 minutes. Symstore on xbox takes about ~22 minutes and if two builds are going simultaneously it can cause a job to fail due to the timeout being hit. #jira FORT-0 Change 3698692 by Aaron.McLeran #jira FORT-57582 crash in sound mix state code - Removed the assert as it looks like that state is now possible. Change 3698411 by Bob.Tellez #UE4 One last correctness fix for when to not save generated base ini files. #jira FORT-57315 Change 3698390 by Bob.Tellez #UE4 Slightly more accurate logic to prevent writing of base ini files (old logic may have prevented writing of non-base ini files) #JIRA FORT-57315 Change 3698369 by Bob.Tellez #UE4 Ensure that Tcp/Udp messaging plugins are disabled in shipping config Change 3698352 by Bob.Tellez #UE4 Minor additional fix to make sure DISABLE_GENERATED_INI_WHEN_COOKED only affects cooked builds #jira FORT-57315 Change 3698341 by Bob.Tellez #UE4 DISABLE_GENERATED_INI_WHEN_COOKED now properly prevents all base ini file loads from happening from a generated folder. It also prevents writing generated ini files completely. #JIRA FORT-57315 Change 3697553 by Nick.Darnell Slate - When setting the content of an SBox it should always invalidate. Change 3697330 by Bart.Hawthorne APlayerController::ServerShortTimeout_Implementation now only iterates over the active object list instead of uisng an actor iterator, since non-replicated actors wont have a network object info to update. #jira FORT-57099 #tests ran 100 player bot match Change 3695578 by Bob.Tellez #UE4 Fix Win32 Change 3695508 by Eric.Newman Tweaked LogInit logging to clarify when the command line is being filtered * Encountered this red herring when evaluating crash logs #jira FORT-55839 #tests ran shipping & debug client builds, and editor game build Change 3694898 by Michael.Trepka Fixed Vorbis audio not playing on non-Windows platforms due to changes in CL 3668361 #jira FORT-57121 Change 3694655 by David.Ratti Reimplement TweakObjetPtr optimizations with FObjectReplicator as an FGCObject instead of the owning channel being responsible for adding the replciator's ObjectPtr to the reference collection. (There are cases where object replicator ownership is transferred). #JIRA FORT-57298 Change 3694491 by Ben.Woodhouse Change courtesy of Gil: Drop the priority of the texture streamer using a new low-priority thread pool. This saves a 1-2ms in heavy combat in PVE (XB1 Test) #jira FORT-57376 Change 3693609 by Ryan.Gerleve Back out CL 3689050 since it was likely causing a crash. #jira FORT-57298 Change 3693327 by Aaron.McLeran #jira FORT-57416 Fixing PS4 cook. Making sure zero pad bytes stays positive without a check. Change 3693136 by David.Ratti fix clang warning Change 3692703 by Thomas.Sarkanen Fix CIS warning on PS4/Linux Change 3692589 by Thomas.Sarkanen Moved exposed value handler bound function initialization to CDO postload This means that FindPropertyByName and FindFunctionChecked dont incur any overhead when spawning in new anim instances #jira FORT-56968 - Hitch - SkeletalMeshComponent initialization (110ms) #tests PIE PvE, 20-bot BR game on PC/PS4. Change 3692552 by Alex.Delesky Change 3692495 by Bart.Hawthorne Fix build Change 3692488 by Bart.Hawthorne Check for actor relevancy and level initialization when there's no channel first when prioritizing actors for replication. Dormancy checks in this case are useless because ShouldActorGoDormant will always be false, and if IsActorDormant is also true, then the result of skipping the actor is the same. #jira FORT-57104 #tests played 100 player bot match Change 3691819 by Bob.Tellez #UE4 No longer conditionally including SlateDebug fonts in the cook based on configuraiton. When builds are produced that contain more than one configuration it changes what is cooked in unexpected ways so now we just always cook this font. Change 3691805 by Bob.Tellez #UE4 CIS fix Change 3691784 by Bob.Tellez #UE4 Optimization for exiting PIE. Texture streaming managers have an optimization for game worlds but were not using them for PIE worlds Change 3691273 by Aaron.McLeran #jira UE-50650 Fix memory/event leak in USoundWave::AudioDecompressor Fix is to only delete the decompress/pre-cache task in game thread during FinishDestroy and not allow sounds to start playing unless the precache task has finished. Change 3691268 by Aaron.McLeran #jira FORT-56228 LogAudio:Warning: spam causes severe performance drop on the Mac Platform Reducing log level Change 3690547 by Ryan.Gerleve Speculative fix #2 for a server crash/assert. If the timing is right, it's possible for the server to try to re-load a placed-in-map actor that was previously garbage collected. This was happening because CanClientLoadObject was always returning true for these (null) objects, even if the NetGUID corresponded to a map actor that shouldn't be loaded. Also added/improved some logging that will help in case this doesn't fix the issue. #jira FORT-55763 Change 3690451 by Lukasz.Furman changed branch name testing in engine hacks to use case insensitive match Change 3690270 by David.Ratti Cache weak object ptr in FNetworkObjectInfo to avoid reconstructing one every time we need to lookup its actor channel. #jira FORT-57156 Change 3690227 by David.Ratti Added optional TWeakObjectPtr parameter to packagemap functions GetOrAssignNetGUID, SUpportsObject. This allows you to pass in a weak ptr for an object if its already created. If you pass in null, the functions will create them internally. This fixes some common cases where we were converting the same object into weak ptr multiple times in a frame. #jira FORT-57156 Change 3690184 by David.Ratti Cache net connection weakobjectptr when building consider list instead of constructing it again for every actor. #jira FORT-57156 Change 3689805 by Peter.Knepley Make ConditionalInitAxisProperties protected instead of private #jira FORT-56414 Change 3689789 by Marcus.Wassmer Hack workaround for missing shadowdepthps for XB1 until we get a handle on why things are exploding #jira FORT-56792 Change 3689702 by Peter.Knepley Allow games to have a custom MassageAxisInput function #jira FORT-56414 Change 3689687 by Bob.Tellez #UE4 Avoid copying the shaders array to avoid changing refcounts of shaders while serializing Change 3689655 by Peter.Knepley Make SmoothMouse virtual so games can have their own smoothing #jira FORT-56417 Change 3689499 by Bart.Hawthorne Fix Linux CIS warnings Change 3689397 by Bart.Hawthorne Changed FOutBunch and FInBunch uint8 entries to use bitfields instead of bytes which knocked 86% off of our net tick time Change 3689056 by Lukasz.Furman 3rd attempt for branch name checking in engine code hacks Change 3689050 by David.Ratti First pass at removing use of TWeakObjectPtr from core replication classes. This should reduce FWeakObjectPtr::Get usage. Still expecting to see FWeakObjectPtr::operator= come up a lot. Going to tackle this in a second pass which will require some deeper refactors. #jira FORT-57156 Change 3688972 by Bob.Tellez #UE4 Add build target flag to control DISABLE_GENERATED_INI_WHEN_COOKED Change 3688864 by Ryan.Gerleve Fix broken logic to find the "best" replay sample for character movement when we don't find two samples to interpolate between. Now uses the sample closest to the current time. Also added some debug drawing. #jira FORT-56553 Change 3687654 by Bob.Tellez #UE4 Added compile time option to disable reading generated ini files other than GameUserSettings in cooked builds. Change 3686615 by Lukasz.Furman Back out changelist 3686610 Change 3686592 by Matt.Kuhlenschmidt Gave the CL description in the source control submit window more room Change 3686020 by Ben.Marsh Remove debug code that prints to logs while building. #jira FORT-56923 Change 3684414 by Peter.Knepley Back out changelist 3678336 #jira FORT-56512 Change 3683894 by Gil.Gribb UE4 - By default, do not check for illegal calls to MarkPendingKill in the garbage collector in test and shipping configuations. This was slow. Change 3683686 by peter.knepley Raise MTU from 512 to 1024 #jira FORT-56756 Change 3683343 by Rob.Cannaday Fixes insert disk popup #jira FORT-56500 Change 3683156 by Peter.Knepley Network optimizations to reduce alloc/free & memcpy churn saving about 10% of net tick time Change 3682234 by Guillaume.Abadie Cherrypick TAA refactor 3512696 and TAA fix 3668108 #jira FORT-56303 Change 3681494 by Bob.Tellez #UE4 IsLoadedByEditorPropertiesOnly is not working properly so I removed it from FullLoadAndSave Change 3681342 by Bob.Tellez #UE4 Added a FullLoadAndSave option to cooking, which simply loads all content then saves it to avoid the overhead of managing which packages need to be cooked. Large perf improvement for those who cook by the book and can fit the entire game in memory Change 3681014 by Yenal.Kal #jira FORT-56209 #jira FORT-56272 Fixed a bug in the ability system where the ability ended callbacks could cause the ability end to be called again in the same call stack even though the ability is activated only once. This was happening because we were broadcasting the event before we decrement the active count. Change 3680739 by Michael.Trepka Warn about NaN float literal values when translating HLSL to Metal instead of failing, plus added more detailed warning/error messages for NaN and unhandled values #jira FORT-56425 Change 3679237 by Bob.Tellez #UE4 Remove some debug logging Change 3679187 by Bob.Tellez #UE4 Dramatically imrpove speed of writing cookloadorder log file Change 3678926 by Bob.Tellez #UE4 Minor savepackage speed improvements Change 3678336 by Aaron.McLeran #jira UE-50650 Fix memory/event leak in USoundWave::AudioDecompressor Fix is to only delete the decompress/pre-cache task in game thread during FinishDestroy and not allow sounds to start playing unless the precache task has finished. Change 3676998 by Ben.Woodhouse Fix XGE shader compilation so it doesn't crash randomly Change 3676606 by Ori.Cohen Update GC to be 61.1 to avoid heartbeat collision Change 3676447 by Ori.Cohen Fix CIS warning Change 3676286 by Max.Preussner Fixed client Crash UMediaSoundWave::GeneratePCMData (FORT-56107) #jira FORT-56107 Change 3674591 by Ryan.Gerleve Don't filter out PendingKillPending actors from FNetworkObjectList::Find. This was causing actors that get destroyed while dormant on the server to never be destroyed on clients. #jira FORT-55802 Change 3674181 by Michael.Noland Framework: DLL export LogGameplayTags Change 3674138 by Billy.Bramer #jira FORT-56138, FORT-56139 - Duplicate CL 3396590 from //Orion/Main re: ranged-base for iteration ensure from montage changes Change 3672464 by Lukasz.Furman removed recast layers crash tracking code Change 3672153 by Daniel.Lamb Added some debugging code to help track down why shaders are hashing poorly. Change 3671498 by Luke.Thatcher [~] Modify new frame syncing to reduce performance regression seen when the game is running over budget. - Rather than forcing a flip sync after we kick off one frame early, we just continue to kick frames if we time out. This allows the game thread to get ahead when we're over budget. - The game thread will naturally resync with the vsync when we return to being in budget. #jira FORT-55842 Change 3671079 by Ryan.Gerleve Fix an edge case where the PackageMap on the server would try to resolve objects from default NetGUIDs even if their outer has already been garbage collected. This could lead to a completely unrelated object being returned instead of null, leading to asserts and potentially other issues. #jira FORT-55763 Change 3670487 by Zak.Middleton Optimize some low level details of UNetConnection::ClientHasInitializedLevelFor() and UNetDriver::IsLevelInitializedForActor(). Add cached WorldPackage for NetDriver to avoid repeated GetOuterMost() and Casts. Remove rendundant virtual GetWorld() calls, and mark UNetDriver's version "final" to let it optimize away virtual call. Made UNetConnection::ClientVisibleLevelNames a TSet instead of TArray, since it is searched frequently when there are streaming levels present. #jira FORT-55999 Change 3670351 by Zak.Middleton Back out changelist 3669817 (networking optimizations). Would rather have more testing before it goes to Release-Next. Will resub just for main and RP. #jira FORT-55999 Change 3670344 by Josh.Markiewicz #UE4 - more verbose logging for SetExpectedClientLoginMsgType Change 3670323 by Wes.Hunt Fix for dedicated servers not flushing events in a timely manner. #jira FORT-56015 Doh, using GFrameNumber was NOT a good idea on servers... :-/ Change 3669817 by Zak.Middleton Optimize some low level details of UNetConnection::ClientHasInitializedLevelFor() and UNetDriver::IsLevelInitializedForActor(). Add cached WorldPackage for NetDriver to avoid repeated GetOuterMost() and Casts. Remove rendundant virtual GetWorld() calls, and mark UNetDriver's version "final" to let it optimize away virtual call. Made UNetConnection::ClientVisibleLevelNames a TSet instead of TArray, since it is searched frequently when there are streaming levels present. #jira FORT-55999 Change 3668416 by Michael.Noland Core: Changed FString::ParseIntoArray to use Reset instead of Empty on the passed in array, allowing it to be approximately resized #jira FORT-55887 Change 3668411 by Olaf.Piesche Always cache depth collision particle shader #jira FORT-51307 Change 3668361 by Aaron.McLeran #jira FORT-55628 Attempt to bypass crash and log an error if libvorbisdll fails to load. Change 3667892 by Rob.Cannaday libwebsocket libs to handle getprotobyname("TCP") failing the libwebsockets connection #jira FORT-55917 Touch LwsWebSocket.cpp to ensure the module gets built with the new libs Change 3667308 by Uriel.Doyon Postponed the release of IO requests when canceling mip updates to prevent threading issue. #jira FORT-54491 Change 3666835 by Lukasz.Furman fixed overlapping index buffers when static mesh exports both convex and simple collisions for navigation #jira UE-50370 Change 3665374 by Mike.Fricker Fixed server crashing after hotfixes have re-imported curve table data - The hotfix system is capable of replacing the content of a UCurveTable on the fly - If any systems had references to inner curves on that curve table, they would become invalid - This needs to be fixed in 1.6.4 (tonight) and also in 1.7 #jira FORT-55792 Change 3665063 by Daniel.Broder Fixed crash in GameplayTagQueryCustomization when choosing "Save and Close" on GameplayTagQuery after setting a query due to nullptr NotifyHook in CloseWidgetWindow. Added additional if (StructPropertyHandle.IsValid()) wrappers and one check(StructPropertyHandle.IsValid()); the former to be consistent with other code and prevent possible crashes, the latter to at least catch the cause of a possible crash properly without having to change the code more significantly to handle it gracefully. Also changed some if( X ) to if (X) to match coding standards and provide consistency within the file. Michael, I'm Reviewing you on this fix since you brought this change over from Framework. And Marc because you reviewed him on that change. #UE4 #NoReleaseNotes #RNX Change 3664948 by Lukasz.Furman reduced number of allocations in StorePathfindingDebugData, optimized path length calculations to avoid recursion #jira FORT-51111 Change 3664916 by John.Abercrombie Copy CLs 3383318 & 3388506 from //Orion/Main/Engine/Source/Runtime/Engine/... - Been testing with this for a while now - This change makes particle effects show up on the current frame's pose for skel meshes as well Removed my StopAllMontagesByGroupName temp hack CL 3383318 Delay dispatching of AnimEvents (Notifies and Montage Events) until after we receive an updated animation pose (if applicable). This fixes AnimNotifies playing particle effects using a socket location using last frame's pose. Now they use the current frame's pose. CL 3388506 Delay clearing of MontageInstances and triggering 'OnAllMontageInstancesEnded' until all Montage Events have been dispatched. Also fix SkelMeshComponent ticking on dedicated servers when rejoining in progress. #jira FORT-55102 - Server Crash UAnimInstance::StopAllMontagesByGroupName Change 3780616 by Gil.Gribb Fixed and reenabled r.DelaySceneRenderCompletion Change 3778979 by Gil.Gribb UE4 - Improved the performance of grass updates and added the ability to not do all of them every frame. Change 3778200 by Nick.Darnell UMG - Making it possible to cancel delays and all animations on widgets. Useful when destroying a widget and needing to stop any async state. Change 3777612 by Zak.Middleton Perf: Added option to CharacterMovementComponent to skip immediate forward prediction for proxies on the frame they receive a network update (bNetworkSkipProxyPredictionOnNetUpdate). This avoids all forward prediction sweeps and floor checks on those updates. Intermediate frames will interpolate with prediction. This can also be disabled globally with the CVar "p.NetEnableSkipProxyPredictionOnNetUpdate 0". Added NetworkSmoothingDisableProxyPredictionForPawnLOD to force disabling full simulation for LOD >= this value (currently 3, so bottom 75 pawns). This takes precedence over current distance and view angle checks for prediction (mesh interpolation is untouched). Change 3774338 by Ben.Woodhouse Convert the D3D12 PSO caches to use RwScopeLocks. This change is courtesy of a shelf from Gil, plus a couple of minor fixes. Saves up to a millsecond of frame time in CPU-bound scenarios Change 3773462 by Gil.Gribb UE4 - Add particle batching. This is disabled by default but can improve thread scheduling when there are lots of very fast particle systems. Change 3771375 by Hongyi.Yu Fixed the crash where ability components are unregistered and then re-registered, which usually happens in PIE. Change 3771368 by Ben.Zeigler #jira UE-52670 Add project setting bValidateUnloadedSoftActorReferences that is true by default to match current behavior. If you set it to false it will no longer load packages to look for soft actor references when deleting/renaming actors. Change 3771173 by Seth.Weedin Auto manage attachment support for AudioComponent- An opt-in feature that allows AudioComponents to cache their AttachParent/AttachSocket and only attach themselves when playing audio, detaching after playback is completed. Set to false by default. Change 3768811 by Ori.Cohen Change animation scale collision code so that it uses the physics asset. Change 3768148 by Brian.Bekich Fix muting being unable to find remote player controller Change 3768117 by Ori.Cohen Prevent pawn collision from updating during animation Change 3766554 by Gil.Gribb UE4 - Added a new option to add and remove from static draw lists on demand. This is off by default. Change 3766427 by Nick.Darnell Slate - Finally adding Opacity to SWidget. Any widget can now be alpha animated at will, no more need to waste overhead by wrapping things with SBorder or making them userwidgets just to be able to animate a fade. Change 3761682 by nick.darnell Athena - Introducing a way to interrupt the request to scroll and item into view. In cases where you're animating, quickly showing and hiding, with the item widgets unavailable for a few frames, you enter cases where the deferred navigation is resolved after you've canceled showing a dialog stealing focus. Change 3761416 by Ben.Zeigler #jira UE-52287 Prevent cook metadata like DevelopmentAssetRegistry.bin from being packed into a shipping game, by moving it into a Metadata subdirectory and updating deployment scripts to avoid that directory. Right now it doesn't package them at all, we could change it to package them as Debug Non-UFS if desired Change it so the asset audit UI will only load DevelopmentAssetRegistry.bin files, the cooked registry files don't have enough information any more to be useful Remove ability for runtime game to load DevelopmentAssetRegistry.bin, this ended up not being useful Change 3750998 by Ethan.Geller #jira FORT-60191 Allow -audiomixer command line arg to work on all platforms. Change 3749540 by Marc.Audy SignificanceManager now takes viewpoints in as TArrayView instead of const TArray& Change 3748102 by Marc.Audy Allow cheat cvars to work in Test builds by default Can be overriden by defining ALLOW_CHEAT_CVARS_IN_TEST as 0 in Target.cs files Change 3744756 by Bart.Hawthorne Upgrade Oodle to version 2.5.5. Also, iOS, Android, and Switch platforms have been added. The new dictionary has been generated with old and local captures. Change 3741168 by Max.Preussner MediaUtils: Fixed movies not playing properly in Shipping builds Change 3739256 by Jian.Ru Set distance field self-shadow bias without recreating all render states Change 3730756 by Ben.Woodhouse HISM optimization: Gil's change to skip trees with only one level of hierarchy (working around badly tuned content issues) Change vert threshold to 2K. 1-2ms renderthread win without impacting GPU when rendering point lights Change 3724029 by Zak.Middleton Increase allowed time for movement substep duration. Don't want to lower between 2 iterations, as this is not used much in practice other than deflection and movement mode changes, and that will change behavior (lose momentum). This new setting will absorb longer hitches in the common case (moving without collision or falling). Change 3723985 by Marc.Audy SignificanceManager PostSignificanceUpdate functions can now be executed sequentially on the game thread as well as concurrently in the parallel for (old behavior) Change 3722910 by Jian.Ru Amortize shadow cache update caused by resolution change Changed to use view distance vs. view space z when calculating whole scene shadow resolution which is less sensitive to camera rotation Change 3718247 by Yenal.Kal Fixed the bug where the gameplay effect durations can show incorrect values after rejoin or after server time drifting away from the client. Change 3716343 by Jamie.Dale Adding Korean and Turkish to the localization automation Change 3710534 by Uriel.Doyon Texture streaming optimization where a maximum texture resolution for each level streaming data is computed per view. This is used to cull irrelevant levels and reduce the async task number of iterations. The culled size is defined by the new r.Streaming.MinLevelTextureScreenSize. This requires to remove primitives with big UV density from the level data. Those primitives get moved to the dynamic lists. This is controlled by r.Streaming.MaxTextureUVDensity Change 3707207 by David.Ratti Remove look ahead-vectors prediction in FNetViewer. This (requires) a line trace which is not desirable or really accurate anymore. This saves us a line trace per connection per multicast rpc. unify reliable multicast rpc handling: these now do relevancy checks and are not sent to non relevant clients Change 3706272 by Thomas.Sarkanen Added utility/math functions to aid in optimizing anim blueprints Added VectorLengthXY to get the 2D length of a 3D vector. Avoids unecessary conversions. Added polar->cartesian->polar conversion helper functions for expensive frequently-used anim graph functionality. Change 3706159 by David.Ratti PlayerState/ASC replication optimizations from Polge: this puts the net update frequnecy on player state back to 1hz while forcing netupdates on the player state actor when the ability system component needs to update Change 3692891 by David.Ratti Optimizations for UNetConnection::ClientHasInitializedLevelFor: build acceleration map of actor outer's (ULevels) -> Visibility bool. Existing logic stays the same. Change 3691392 by Aaron.McLeran #jira UE-50628 Fix audio trying to sync load bulk data with EDL enabled - Fix log error in BulkData.cpp - Make the first stream chunk be force inline payload in bulk data flags so it loads immediately vs in async IO system - Make audio stream chunks get as close to 256 k chunks as it can, zero-pad rest to be 256 k aligned - Fix up DDC key, serialize AudioDataSize separately from chunk DataSize Change 3682683 by Zak.Middleton Add bOnlyTickMontageOnDedicatedServer variable to AnimInstance, to avoid anim bp updates on dedicated server. Turn on to fix hitching from queued ServerMove() calls, and some free perf during all montages on the server. Change 3678771 by Ori.Cohen Added the ability to turn on stack walk during hitching vs lightweight stats Change 3676363 by Ori.Cohen Added the ability to get callstacks as part of hitch detection Change 3674877 by Keith.Judge Move definition of GFailedToFindParamCollectionBufferQueue to ShaderBaseClasses.cpp so that all targets can successfully compile. Change 3672515 by Bob.Tellez Added code to play wind particle effects Change 3670909 by Zak.Middleton Fixed ForcePositionUpdate() not calling CheckJumpInput(). Added "p.NetForceClientServerMoveLossPercent" cvar to simulate loss of client->server movement RPCs (without hosing the rest of networking). [CL 3791033 by Marc Audy in Main branch]
2017-12-05 21:57:41 -05:00
.FillHeight(.5f)
.Padding(FMargin(5, 0, 5, 5))
[
SNew(SBox)
.WidthOverride(520)
[
SAssignNew( ChangeListDescriptionTextCtrl, SMultiLineEditableTextBox )
.SelectAllTextWhenFocused( true )
.AutoWrapText( true )
]
]
+SVerticalBox::Slot()
.Padding(FMargin(5, 0))
[
SNew(SBorder)
[
SAssignNew(ListView, SListView<TSharedPtr<FSubmitItem>>)
.ItemHeight(20)
.ListItemsSource(&ListViewItems)
.OnGenerateRow(this, &SSourceControlSubmitWidget::OnGenerateRowForList)
.OnContextMenuOpening(this, &SSourceControlSubmitWidget::OnCreateContextMenu)
.OnMouseButtonDoubleClick(this, &SSourceControlSubmitWidget::OnDiffAgainstDepotSelected)
.HeaderRow(HeaderRowWidget)
.SelectionMode(ESelectionMode::Single)
]
]
+SVerticalBox::Slot()
.AutoHeight()
.Padding(FMargin(5, 5, 5, 0))
[
SNew( SBorder)
.Visibility(this, &SSourceControlSubmitWidget::IsWarningPanelVisible)
.Padding(5)
[
SNew( SErrorText )
.ErrorText( NSLOCTEXT("SourceControl.SubmitPanel", "ChangeListDescWarning", "Changelist description is required to submit") )
]
]
+SVerticalBox::Slot()
.AutoHeight()
.Padding(5)
[
SNew(SWrapBox)
.UseAllottedWidth(true)
+SWrapBox::Slot()
.Padding(0.0f, 0.0f, 16.0f, 0.0f)
[
SNew(SCheckBox)
.OnCheckStateChanged( this, &SSourceControlSubmitWidget::OnCheckStateChanged_KeepCheckedOut)
.IsChecked( this, &SSourceControlSubmitWidget::GetKeepCheckedOut )
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3431234) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3323393 on 2017/02/27 by Ben.Cosh This fixes an issue with actor details component selection causing actor selection to get out of sync across undo operations #Jira UE-40753 - [CrashReport] UE4Editor_LevelEditor!FLevelEditorActionCallbacks::Paste_CanExecute() [leveleditoractions.cpp:1602] #Proj Engine Change 3379355 on 2017/04/04 by Lauren.Ridge Adding sort priorities to Material Parameters and Parameter Groups. If sort priorities are equal, fallback to alphabetical sort. Default sort priority is 0, can be set on the parameter in the base material. Parameters are still sorted within groups.Group sort priority is set on the main material preferences. Change 3379389 on 2017/04/04 by Nick.Darnell Core - Removing several old macros that were referring to EMIT_DEPRECATED_WARNING_MESSAGE, which is no longer defined in the engine, so these macros are double deprecated. Change 3379551 on 2017/04/04 by Nick.Darnell Automation - Adding more logging to the automation controller when generating reports. Change 3379554 on 2017/04/04 by Nick.Darnell UMG - Making the WidgetComponent make more things caneditconst in the editor depending on what the settings are to make it more obvious what works in certain contexts. Change 3379565 on 2017/04/04 by Nick.Darnell UMG - Deprecating OPTIONA_BINDING, moving to PROPERTY_BINDING in place and you'll need to define a PROPERTY_BINDING_IMPLEMENTATION. Will make bindings safer to call from blueprints. Change 3379576 on 2017/04/04 by Lauren.Ridge Parameter group dropdown now sorts alphabetically Change 3379592 on 2017/04/04 by JeanMichel.Dignard Fbx Morph Targets import optimisation - Only reimport the points for each morphs and compute the tangents for the wedges affected by those points. - Removed the full skeletal mesh rebuild on each morph target import. - Allow MeshUtilities::ComputeTangents_MikkTSpace to only recompute the tangents that are zero. Gains around 7.30 mins for 785 morph targets in mikkt space and 1.30 mins using built-in normals, with provided test file. #jira UE-34125 Change 3380260 on 2017/04/04 by Nick.Darnell UMG - Fixing some OPTIONAL_BINDINGS that needed to be converted. Change 3380551 on 2017/04/05 by Andrew.Rodham Sequencer: Fixed ImplIndex sometimes not relating to the source data index when compiling at the track level #jira UE-43446 Change 3380555 on 2017/04/05 by Andrew.Rodham Sequencer: Automated unit tests for the segment and track compilers Change 3380647 on 2017/04/05 by Nick.Darnell UMG - Tweaking some stuff on the experimental rich textblock. Change 3380719 on 2017/04/05 by Yannick.Lange Fix 'Compile FortniteClient Mac' and 'Compile Ocean iOS' Failed with Material.cpp errors. Wrapping WITH_EDITOR around ParameterGroupData. #jira UE-43667 Change 3380765 on 2017/04/05 by Nick.Darnell UMG - Fixing a few more instances of OPTIONAL_BINDING. Change 3380786 on 2017/04/05 by Yannick.Lange Wrap SortPriority in GetParameterSortPriority with WITH_EDITOR. Change 3380872 on 2017/04/05 by Matt.Kuhlenschmidt PR #3453: UE-43004: YesNo MessageDialog instead of YesNoCancel (Contributed by projectgheist) Change 3381635 on 2017/04/05 by Matt.Kuhlenschmidt Expose static mesh material accessors to blueprints #jira UE-43631 Change 3381643 on 2017/04/05 by Matt.Kuhlenschmidt Added a way to enable or disable the component transform units display independently from unit display anywhere else. This is off by default Change 3381705 on 2017/04/05 by Yannick.Lange - Slate application multiple input pre-processors. - Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor. Change 3381959 on 2017/04/05 by Yannick.Lange Back out changelist 3381705. Old changelist. Change 3382049 on 2017/04/05 by Yannick.Lange - Slate application multiple input pre-processors in a wrapper class. - Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor. - Deprecated SetInputPreProcessor, but made it work with RegisterInputPreProcessor and UnregisterInputPreProcessor. Change 3382450 on 2017/04/06 by Andrew.Rodham Sequencer: Fixed 'ambiguous' overloaded constructor for UT linux server builds Change 3382468 on 2017/04/06 by Yannick.Lange Rename AllowWorldMovement parameter to bAllow. Change 3382474 on 2017/04/06 by Yannick.Lange Make GetInteractors constant because we dont want it to be possible to change this arrray. Change 3382492 on 2017/04/06 by Yannick.Lange VR Editor: Floating UI's are stored in a map with FNames as key. Change 3382502 on 2017/04/06 by Yannick.Lange VR Editor: Use asset container for auto scaler sound. Change 3382589 on 2017/04/06 by Nick.Darnell Slate - Upgrading usages of SetInputPreprocessor. Also adjusting the API for the new preprocessor functions to have an option to remove all, which was what several usages expected. Also updated the deprecated version of SetInputPreprocessor to removeall if null is provided for the remove, mimicing the old functionality. Change 3382594 on 2017/04/06 by Nick.Darnell UMG - Deprecating GetMousePositionScaledByDPI, this function has too many issues, and I don't want to break buggy backwards compatability, so just going to deprecate it instead. For replacement, you can now access an FGeometry representing the viewport (after DPI scale has been added to the transform stack), and also the FGeometry for a Player's Screen widget host, which might be constrained for splitscreen, or camera aspect. Change 3382672 on 2017/04/06 by Nick.Darnell Build - Fixing incremental build. Change 3382674 on 2017/04/06 by Nick.Darnell Removing a hack added by launcher. Change 3382697 on 2017/04/06 by Matt.Kuhlenschmidt Fixed plugin browser auto-resizing when scrolling. Gave it a proper splitter Change 3382875 on 2017/04/06 by Michael.Trepka Modified FMacApplication::OnCursorLock() to avoid a thread safety problem with using TSharedPtr/Ref<FMacWindow> of the same window on main and game threads simultaneously. #jira FORT-34952 Change 3383303 on 2017/04/06 by Lauren.Ridge Adding sort priority to texture parameter code Change 3383561 on 2017/04/06 by Jamie.Dale Fixed MaximumIntegralDigits incorrectly including group separators in its count Change 3383570 on 2017/04/06 by Jamie.Dale Added regression tests for formatting a number with MaximumIntegralDigits and group separators enabled Change 3384507 on 2017/04/07 by Lauren.Ridge Mesh painting no longer paints on invisible components. Toggling visiblity refreshes the selected set. #jira UE-21172 Change 3384804 on 2017/04/07 by Joe.Graf Fixed a clang error on Linux due to missing virtual destructor when deleting through the interface pointer #CodeReview: marc.audy #rb: n/a Change 3385011 on 2017/04/07 by Matt.Kuhlenschmidt Fix dirtying levels just by copying actors if the level contains a foliage actor. The foliage system makes lazy asset pointers #jira UE-43750 Change 3385127 on 2017/04/07 by Lauren.Ridge Adding WITHEDITOR to OnDragDropCheckOverride Change 3385241 on 2017/04/07 by Jamie.Dale Removing warning if asking for a null or empty localization provider Change 3385442 on 2017/04/07 by Arciel.Rekman Fix a number of problems with Linux splash. - Thread safety (UE-40354). - Inconsistent font (UE-35000). - Change by Cengiz Terzibas. Change 3385708 on 2017/04/08 by Lauren.Ridge Resaving VREditor asset container with engine version Change 3385711 on 2017/04/08 by Arciel.Rekman Speculative fix for a non-unity Linux build. Change 3386120 on 2017/04/10 by Matt.Kuhlenschmidt Fix stats not being enabled when in simulate Change 3386289 on 2017/04/10 by Matt.Kuhlenschmidt PR #3466: Git plugin: add option to autoconfigure Git LFS (Contributed by SRombauts) Change 3386301 on 2017/04/10 by Matt.Kuhlenschmidt PR #3470: Git Plugin: disable "Keep Files Checked Out" checkbox on Submit to Source Control Window (Contributed by SRombauts) Change 3386381 on 2017/04/10 by Michael.Trepka PR #3461: Mac doesn't return the correct exit code (Contributed by projectgheist) Change 3388223 on 2017/04/11 by matt.kuhlenschmidt Deleted collection: MattKTest Change 3388808 on 2017/04/11 by Lauren.Ridge Reset arrows now only display for non-default values in the Material Instance editor. Reset to default arrows now are placed in the correct location for SObjectPropertyEntryBox and SPropertyEditorAsset. SResetToDefaultPropertyEditor now takes a property handle in the constructor, instead of an FPropertyEditor. #jira UE-20882 Change 3388843 on 2017/04/11 by Lauren.Ridge Forward declaring custom reset override. Fix for incremental build error Change 3388950 on 2017/04/11 by Nick.Darnell PR #3450: UMG "Lock" Feature (Contributed by GBX-ABair). Epic Edit: Made some changes to make it work with named slots, added an option not to always recursively itterate the children, also removed the dependency on SWidget changes. Change 3388996 on 2017/04/11 by Matt.Kuhlenschmidt Removed crashtracker Change 3389004 on 2017/04/11 by Lauren.Ridge Fix for automated test error - additional safety check for if the reset button has been successfully created. Change 3389056 on 2017/04/11 by Matt.Kuhlenschmidt Removed editor live streaming Change 3389077 on 2017/04/11 by Jamie.Dale Removing QAGame config change Change 3389078 on 2017/04/11 by Nick.Darnell Fortnite - Fixing an input preprocessor warning. Change 3389136 on 2017/04/11 by Nick.Darnell Slate - Removing deprecated 'aspect ratio' locking box cells, never really worked, deprecated a long time ago. Change 3389147 on 2017/04/11 by Nick.Darnell UMG - Fixing a critical error with the alignment of the lock icon. #jira UE-43881 Change 3389401 on 2017/04/11 by Nick.Darnell UMG - Adds a designer option to control respecting the locked mode. Change 3389638 on 2017/04/11 by Nick.Darnell UMG - Adding the Widget Reflector button to the widget designer. Change 3389639 on 2017/04/11 by Nick.Darnell UMG - Tweaking the respect lock icon. Change 3390032 on 2017/04/12 by JeanMichel.Dignard Fixed project generation when using subfolders in Target.SolutionDirectory (ie: SolutionDirectory = "Programs\MyProgram") Change 3390033 on 2017/04/12 by Matt.Kuhlenschmidt PR #3472: Exposed Distributions to Game Projects and Plugins (Contributed by StormtideGames) Change 3390041 on 2017/04/12 by Matt.Kuhlenschmidt PR #3446: Add missing TryLock to PThreadCriticalSection and add RAII helper for try locking. (Contributed by Laurie-Hedge) Change 3390196 on 2017/04/12 by Lauren.Ridge Fix for crash on opening assets without reset to default button enable Change 3390414 on 2017/04/12 by Matt.Kuhlenschmidt PR #3300: UE-5528: Added check for empty startup tutorial path (Contributed by projectgheist) #jira UE-5528 Change 3390427 on 2017/04/12 by Jamie.Dale Fixed not being able to set pure whitespace values on FText properties #jira UE-42007 Change 3390712 on 2017/04/12 by Jamie.Dale Content Browser search now takes the display names of properties into account #jira UE-39564 Change 3390897 on 2017/04/12 by Nick.Darnell Slate - Changing the order that the tabs draw in so that the draw front to back, instead of back to front. Change 3390900 on 2017/04/12 by Nick.Darnell Making a Cast CastChecked in UScaleBox. Change 3390907 on 2017/04/12 by Nick.Darnell UMG - Adding GetMousePositionOnPlatform and GetMousePositionOnViewport as other replacements that people can use rather than GetMousePositionScaledByDPI. Change 3390934 on 2017/04/12 by Cody.Albert Fix to set correct draw layer in FSlateElementBatcher::AddElements Change 3390966 on 2017/04/12 by Nick.Darnell Input - Force inline some core input functions. Change 3391207 on 2017/04/12 by Jamie.Dale Fixed moving a folder containing a level not moving the level Also removed some redundant usage of ContentBrowserUtils::GetUnloadedAssets #jira UE-42091 Change 3391327 on 2017/04/12 by Mike.Fricker Removed Twitch support and GameLiveStreaming Change 3391405 on 2017/04/12 by Mike.Fricker Removed Twitch support and GameLiveStreaming (part 2) Change 3391407 on 2017/04/12 by Mike.Fricker Removed some remaining EditorLiveStreaming and CrashTracker code Change 3392296 on 2017/04/13 by Yannick.Lange VR Editor: New assets in asset containers for gizmo rotation. Change 3392332 on 2017/04/13 by Nick.Darnell Slate - Removing delegate hooks from the safezone and scalebox widget when the widgets are cleaned up. Change 3392349 on 2017/04/13 by Cody.Albert Corrected typo Change 3392688 on 2017/04/13 by Yannick.Lange VR Editor: Resaved asset containers Change 3392905 on 2017/04/13 by Jamie.Dale Fixed FPaths::ChangeExtension and FPaths::SetExtension stomping over the path part of a filename if the name part of the had no extension but the path contained a dot, eg) C:/First.Last/file Change 3393514 on 2017/04/13 by Yannick.Lange VR Editor: Temp direct interaction pointer. Change 3393930 on 2017/04/14 by Yannick.Lange VR Editor: Remove unused transform gizmo Change 3394084 on 2017/04/14 by Max.Chen Audio Capture: No longer beta Change 3394499 on 2017/04/14 by Cody.Albert Updated UMovieSceneSpawnTrack::PostLoad to call ConditionalPostLoad on bool track before converting it to a spawn track #rnx Change 3395703 on 2017/04/17 by Yannick.Lange Duplicate from Release-4.16 CL 3394172 Viewport Interaction: Fix disable animation when aiming for gizmo stretch handles. #jira UE-43964 Change 3395794 on 2017/04/17 by Mike.Fricker #rn Fixed FastXML not loading XML files with attributes delimited by single quote characters Change 3395945 on 2017/04/17 by Yannick.Lange VR Editor: Swap end and start of laser, because they start of laser was using end mesh. Change 3396253 on 2017/04/17 by Michael.Dupuis #jiraUE-43693: While moving foliage instance between levels, UI count was'nt updating properly Moved MoveSelectedFoliageToLevel to EdModeFoliage as we required more treatment than was done in LevelCollectionModel Ask to save foliage type as asset while moving between level foliage instances containing local foliage type Change 3396291 on 2017/04/17 by Michael.Dupuis #jira UE-35029: Added a cache for mesh bounds so if the bounds changed we can rebuild the occlusion tree Added possibility to register on bounds changed of a static mesh in editor mode Rebuild the occlusion tree if the mesh bounds changed Rebuild the occlusion tree if we change the mesh associated with a foliage type Optimize some operation to not Rebuild the occlusion tree for every instance added/remove instead it's done at the end of the operation Change 3396293 on 2017/04/17 by Michael.Dupuis #jira UE-40685: Improve Collision With World algo, to support painting pitch rotated instance or not on a flat terrain or slope respecting the specified ground angles Change 3397660 on 2017/04/18 by Matt.Kuhlenschmidt PR #3480: Git plugin: improve/cleanup init and settings (Contributed by SRombauts) Change 3397675 on 2017/04/18 by Alex.Delesky #jira UE-42383 - Adds a delegate to the placement mode module to allow users to register custom categories and listen to when they should be refreshed. Change 3397818 on 2017/04/18 by Yannick.Lange ViewportInteraction and VR Editor: - Replace GENERATED_UCLASS_BODY with GENERATED_BODY. - Remove destructors for uobjects. Change 3397832 on 2017/04/18 by Yannick.Lange VR Editor: Remove unused vreditorbuttoon Change 3397884 on 2017/04/18 by Yannick.Lange VREditor: Addition to 3397832, remove unused vreditorbuttoon. Change 3397985 on 2017/04/18 by Michael.Trepka Another attempt to solve the issue with dsymutil failing with an error saying the input file did not exist. We now check for the input file's existence in a loop 30 times (once a second) before trying to call dsymutil. Also, added a FixDylibDependencies as a prerequisite for dSYM generation. #jira UE-43900 Change 3398030 on 2017/04/18 by Jamie.Dale Fixed outline changes not automatically updating the text layout used by a text block #jira UE-42116 Change 3398039 on 2017/04/18 by Jamie.Dale Unified asset drag-and-drop FAssetDragDropOp now handles both assets and asset paths, and FAssetPathDragDropOp has been removed. This allows assets and folders to be drag-dropped at the same time in the Content Browser. #jira UE-39208 Change 3398074 on 2017/04/18 by Michael.Dupuis Fixed crash in cooking fortnite Change 3398351 on 2017/04/18 by Alex.Delesky Fixing PlacementMode module build error Change 3398513 on 2017/04/18 by Yannick.Lange VR Editor: - Remove unused previousvreditor member. - Removing extensions when exiting vr mode without having to find the extensions. Change 3398540 on 2017/04/18 by Alex.Delesky Removing a private PlacementMode header that was included in a public one. Change 3399434 on 2017/04/19 by Matt.Kuhlenschmidt Remove uncessary files from p4 Change 3400657 on 2017/04/19 by Jamie.Dale Fixed potential underflow when using negative digit ranges with FastDecimalFormat Change 3400722 on 2017/04/19 by Jamie.Dale Removed some check's that could trip with malformed data Change 3401811 on 2017/04/20 by Jamie.Dale Improved the display of asset tags in the Content Browser - Numeric tags are now displayed pretty printed. - Numeric tags can now be displayed as a memory value (the numeric value should be in bytes). - Dimensional tags are now split and each part pretty printed. - Date/Time tags are now stored as a timestamp (which has the side effect of sorting correctly) and displayed as a localized date/time. - The column view now shows the same display values as the tooltips do. - The tooltip now uses the tag meta-data display name (if set). - The tag meta-data display name can now be used as an alias in the Content Browser search. #jira UE-34090 Change 3401868 on 2017/04/20 by Cody.Albert Add screenshot save directory parameter to editor and project settings #rn Added options to the settings menu to specify screenshot save directory Change 3402107 on 2017/04/20 by Jamie.Dale Cleaned up the "View Options" menu in the Content Browser Re-organized some of the settings into better groups, and fixed some places where items would still be shown in the asset view when some of these content filter options were disabled (either via a setting, or via the UI). Change 3402283 on 2017/04/20 by Jamie.Dale Creating a folder in the Content Browser now creates the folder on disk, and cancelling a folder naming now removes the temporary folder #jira UE-8892 Change 3402572 on 2017/04/20 by Alex.Delesky #jira UE-42421 PR #3311: Improved log messages (Contributed by projectgheist) Change 3403226 on 2017/04/21 by Yannick.Lange VR Editor: - Removed previous quick menu floating UI panel. - Added the concept of a info display floating UI panel. - Used info display for showing sequencer timer. Change 3403277 on 2017/04/21 by Yannick.Lange VR Editor: - Set window mesh for info display panel. - Add option to null out widget when hidden. Change 3403289 on 2017/04/21 by Yannick.Lange VR Editor: Don't load VREditorAssetContainer asset when starting editor. Change 3403353 on 2017/04/21 by Yannick.Lange VR Editor: Fix variable 'RelativeOffset' is uninitialized when used within its own initialization. Change 3404183 on 2017/04/21 by Matt.Kuhlenschmidt Fix typo Change 3405378 on 2017/04/24 by Alex.Delesky #jira UE-42550 - Audio thumbnails should never rerender now, even with real-time thumbnails enabled Change 3405382 on 2017/04/24 by Alex.Delesky #jira UE-42097 - The Main Frame window will no longer steadily grow if it's closed while not maximized Change 3405384 on 2017/04/24 by Alex.Delesky #jira UE-43985 - Duplicating Force Feedback, Sound Wave, or Sound Cue assets from the context menu after right-clicking on the playback controls will now correctly select the newly created asset for rename. Change 3405386 on 2017/04/24 by Alex.Delesky #jire UE-42239 - Blueprints that have been duplicated from another blueprint will now render their thumbnails correctly instead of displaying a flat black thumbnail. Change 3405388 on 2017/04/24 by Alex.Delesky #jira UE-43241 - Blueprint classes that derive from notplaceable classes (such as SpectatorPawn and GameMode) can no longer be placed within the level editor via the right-click Add/Replace menus Change 3405394 on 2017/04/24 by Alex.Delesky #jira UE-42137 - Users can no longer access the widget object of a Widget Component from within actor construction scripts Change 3405429 on 2017/04/24 by Alex.Delesky Fixing a naming issue for CL 3405378 Change 3405579 on 2017/04/24 by Cody.Albert Fixed bad include from CL#1401868 #jira UE-44238 Change 3406716 on 2017/04/24 by Max.Chen Sequencer: Add attach/detach rules for attach section. #jira UE-40970 Change 3406718 on 2017/04/24 by Max.Chen Sequencer: Set component velocity for attached objects #jira UE-36337 Change 3406721 on 2017/04/24 by Max.Chen Sequencer: Re-evaluate on stop. This fixes a situation where if you set the playback position to the end of a sequence while it's playing, the sequence will stop playing but won't re-evaluate to the end of the sequence. #jira UE-43966 Change 3406726 on 2017/04/24 by Max.Chen Sequencer: Added StopAndGoToEnd() function to player #jira UE-43967 Change 3406727 on 2017/04/24 by Max.Chen Sequencer: Add cinematic options to level sequence player #jira UE-39388 Change 3407097 on 2017/04/25 by Yannick.Lange VR Editor: Temp asset for free rotation handle gizmo. Change 3407123 on 2017/04/25 by Michael.Dupuis #jira UE-44329: Only display the message in attended mode and editor (so user can actually perform the save) Change 3407135 on 2017/04/25 by Max.Chen Sequencer: Load level sequence asynchronously. #jira UE-43807 Change 3407137 on 2017/04/25 by Shaun.Kime Fixing comments to refer to correct function name. Change 3407138 on 2017/04/25 by Max.Chen Sequencer: Mark actor that the spawnable duplicates as a transient so that the level isn't dirtied. Then clear the transient flag on the object template. #jira UE-30007 Change 3407139 on 2017/04/25 by Max.Chen Sequencer: Fix active marker in sub, cinematic, control rig sections. #jira UE-44235 Change 3407229 on 2017/04/25 by Max.Chen Sequencer: Prioritize buttons over label. #jira UE-26813 Change 3407343 on 2017/04/25 by Matt.Kuhlenschmidt Added a world accessor to blutilties so they can operate on the editor world (spawn,destroy actors etc) Change 3407401 on 2017/04/25 by Nick.Darnell Slate - Adding a Round function to SlateRect. Also adding a way to convert a Transform2D to a full matrix. Change 3407842 on 2017/04/25 by Matt.Kuhlenschmidt Made AssetTools a uobject interface so it could be access from script. A few methods were deprecated and renamed to enforce a consistent UI. Now all asset tools methods that expose a dialog have "WithDialog" in their name to differentiate them from methods that do not open dialogs and could be used by scripts for automation. C++ users may still access IAssetTools but should not ever need to use the UAssetTools interface class Change 3407890 on 2017/04/25 by Matt.Kuhlenschmidt Removed temp method Change 3408084 on 2017/04/25 by Matt.Kuhlenschmidt Exposed source control helpers to script Change 3408163 on 2017/04/25 by Matt.Kuhlenschmidt Deprecated actor grouping methods on UUnrealEdEngine and moved their functionality into their own class( UActorGroupingUtils). There is a new editor config setting to set which grouping utils class is used and defaults to the base class. The new utility methods are exposed to script. Change 3408220 on 2017/04/25 by Alex.Delesky #jira UE-43387 - The Levels window will now support the organization of streaming levels using editor-only folders. Change 3408239 on 2017/04/25 by Matt.Kuhlenschmidt Added a file helpers API to script. This one is a wrapper around FEditorFileUtils for now to work around some issues exposing legacy methods to script but FEditorFileUtils will be deprecated soon Change 3408314 on 2017/04/25 by Jamie.Dale Fixed typo Change 3408911 on 2017/04/25 by Max.Chen Level Editor: Delegate for when viewport tab content changes. #jira UE-37805 Change 3408912 on 2017/04/25 by Max.Chen Sequencer: Transport controls are added when viewport content changes and only to viewports that support it (ie. cinematic viewport doesn't allow it since it has its own transport controls). This fixes issues where transport controls wouldn't be visible in newly created viewports and also would get disabled when switching from default to cinematic and back to default. #jira UE-37805 Change 3409073 on 2017/04/26 by Yannick.Lange VR Editor: Fix starting point of lasers. Change 3409330 on 2017/04/26 by Matt.Kuhlenschmidt Fix CIS Change 3409497 on 2017/04/26 by Alexis.Matte Fix crash importing animation with skeleton that do not match the fbx skeleton. #jira UE-43865 Change 3409530 on 2017/04/26 by Michael.Dupuis #jira UE-44329: Only display the log if we're not running a commandlet Change 3409559 on 2017/04/26 by Alex.Delesky #jira none - Fixing case of header include for CL 3408220 Change 3409577 on 2017/04/26 by Yannick.Lange VR Editor: being able to push/pull along the laser using touchpad or analog stick when transforming object towards laser impact. Change 3409614 on 2017/04/26 by Max.Chen Sequencer: Add Scrub() to movie scene player. Change 3409658 on 2017/04/26 by Jamie.Dale Made the handling of null item selection consistent in SComboBox If the selection was initially null and the combo was closed, it would previously pass through the null entry to its child SListView, which would then always think the selection was changing when the combo was opened and cause it to immediately close again. Change 3409659 on 2017/04/26 by Jamie.Dale Added preset Unicode block range selection to the font editor UI #jira UE-44312 Change 3409755 on 2017/04/26 by Max.Chen Sequencer: Back out bIsUISound for scrubbing. Change 3410015 on 2017/04/26 by Max.Chen Sequencer: Fix crash on asynchronous level sequence player load. #jira UE-43807 Change 3410094 on 2017/04/26 by Max.Chen Slate: Enter edit mode and return handled if not read only. Change 3410151 on 2017/04/26 by Michael.Trepka Fix for building EngineTest project on Mac Change 3410930 on 2017/04/27 by Matt.Kuhlenschmidt Expose editor visibility methods on Actor to blueprint/script Change 3411164 on 2017/04/27 by Matt.Kuhlenschmidt Fix crash when repeatedly spaming ctrl+s and ctrl+shift+s to save. PR #3511: UE-44098: Replace check with if-statement (Contributed by projectgheist) Change 3411187 on 2017/04/27 by Jamie.Dale No longer attempt to use the game culture override in the editor Change 3411443 on 2017/04/27 by Alex.Delesky #jira UE-43730, UE-43703 - Material Instances will now correctly use their preview meshes when being edited, or will use their parent's preview mesh if their preview mesh has not been set and the parent's is valid. Change 3411809 on 2017/04/27 by Max.Chen Sequencer: Prioritize buttons over label. #jira UE-26813 Change 3411810 on 2017/04/27 by Cody.Albert Scrollbox now properly calls Invalidate while scrolling Change 3411892 on 2017/04/27 by Alex.Delesky #jira UE-40031 PR #3065: Ignore .vs folder when initializing git projects (Contributed by mattiascibien) Change 3412002 on 2017/04/27 by Jamie.Dale Fixed crash when using an invalid regex pattern #jira UE-44340 Change 3412009 on 2017/04/27 by Cody.Albert Fixed Invalidation Panel to apply scale only to volatile elements, correcting an issue with Cache Relative Positions Change 3412631 on 2017/04/27 by Jamie.Dale Implemented support for hiding empty folders in the Content Browser "Empty" in this case is defined as folders that recursively don't contain assets or classes. Folders that have been created by the user or have at any point contained content during the current editing session are always shown. This also fixes some places where the content filters would miss certain folders (usually due to missing checks when processing AssetRegistry events), and allows asset and path views to be synced to folder selections (as well as asset selections), which improves the experience when renaming folders, and navigating the Content Browser history. #jira UE-40038 Change 3413023 on 2017/04/27 by Max.Chen Sequencer: Fix filtering so that it includes parent nodes only and doesn't recurse through to add their children. Change 3413309 on 2017/04/28 by Jamie.Dale Fixed shadow warning Change 3413327 on 2017/04/28 by Jamie.Dale Added code to sanitize some known strings before passing them to ICU Change 3413486 on 2017/04/28 by Matt.Kuhlenschmidt Allow AssetRenameData to be exposed to blueprints/script Change 3413630 on 2017/04/28 by Jamie.Dale Moved FUnicodeBlockRange into Slate so that it can be used for C++ defined fonts as well as those defined in the font editor Change 3414164 on 2017/04/28 by Jamie.Dale Removing some type-unsafe placement new array additions Change 3414497 on 2017/04/28 by Yannick.Lange ViewportInteraction: - Add arcball sphere asset. - Add opacity parameter to translucent gizmo material. Change 3415021 on 2017/04/28 by Max.Chen Sequencer: Remove spacer nodes at the top and bottom of the node tree. This fixes the artifact of having spaces at the top and bottom which get selected when you click on the space and when you press Home and End to go to the top or bottom of the tree. #jira UE-28931 Change 3415786 on 2017/05/01 by Matt.Kuhlenschmidt #rn PR #3518: Allow PaintedVertices to be sized down (Contributed by jasoncalvert) Change 3415836 on 2017/05/01 by Alex.Delesky #jira UE-39203 - You can now summon the reference viewer from the content browser using the keyboard shortcut. Change 3415837 on 2017/05/01 by Alex.Delesky #jira UE-34947 - When the user attempts to download an IDE from within the editor (due to needing one to add a C++ class), the window that hosts the widget will now close if it's a modal window. Change 3415839 on 2017/05/01 by Alex.Delesky #jira UE-42049 PR #3266: Profiler: added Thread filter (Contributed by StefanoProsperi) Change 3415842 on 2017/05/01 by Michael.Dupuis #jira UE-44514 : Removed the warning as it's causing more issue than it fixes. Change 3416511 on 2017/05/01 by Matt.Kuhlenschmidt Make UHT generate WITH_EDITOR guards around UFunctions generated in a WITH_EDITOR C++ block. This prevents these functions from being generated in non-editor builds Change 3416520 on 2017/05/01 by Yannick.Lange Viewport Interaction: - Toggle ViewportWorldInteraction with command for desktop testing without having to use VREditor. - Add helper function to add a unique extension by subclass. Change 3416956 on 2017/05/01 by Matt.Kuhlenschmidt Exposed EditorLevelUtils to script. This allows creation of streaming levels, setting the current level and moving actors between levels Change 3416964 on 2017/05/01 by Matt.Kuhlenschmidt Prevent foliage from marking actors dirty as HISM components are added and removed from the scene. Change 3416988 on 2017/05/01 by Lauren.Ridge PR #3122: UE-40262: Color tabs according to asset type (Contributed by projectgheist) Changed the highlight style to be around the icon and match the content browser color and style. #jira UE-40437 Change 3418014 on 2017/05/02 by Yannick.Lange Viewport Interaction: Remove material members from base transform gizmo and use asset container to get materials. Change 3418087 on 2017/05/02 by Lauren.Ridge Adding minor tab icon surrounds Change 3418602 on 2017/05/02 by Jamie.Dale Fixed a crash that could occur due to bad data in the asset registry It was possible for FAssetRegistry::PrioritizeSearchPath to re-order the BackgroundAssetResults in response to callback from FAssetRegistry::AssetSearchDataGathered, which caused integrity issues with the array, and would lead to results being missed, or an existing result being processed twice (which due to certain assumptions would result in it being deleted, and bad data being left in the asset registry). These results lists now use a custom type that prevents the mutation of items that have already been processed but not yet trimmed. Change 3418702 on 2017/05/02 by Matt.Kuhlenschmidt Fix USD files that reference other USD files not finding the referenced files by relative path. Requires USD third party changes only Change 3419071 on 2017/05/02 by Arciel.Rekman UBT: optimize FixDeps step on Linux. - Removes the need to re-link unrelated engine libraries when recompiling a code project. - Makes builds faster on machines with multiple cores. - The module that has circularly referenced dependencies is considered cross-referenced itself. - Tested compilation on Linux (native & cross) and Mac (native). Change 3419240 on 2017/05/02 by Cody.Albert Bound widgets in animation tracks can no longer be swapped with widgets from a different widget blueprint, which would lead to a crash Change 3420011 on 2017/05/02 by Max.Chen Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges. #jira UE-44569 Change 3420507 on 2017/05/03 by Lauren.Ridge Selecting a camera or other preview actor in VR Mode now creates a floating in-world viewport. Also deselect all Actors when moving into and out of VR Mode Change 3420643 on 2017/05/03 by andrew.porter QAGame - Adding test content to QA-Sequencer for using spawnables with override bindings Change 3420678 on 2017/05/03 by andrew.porter QAGame: Updating override binding sequence Change 3420961 on 2017/05/03 by Jamie.Dale Exposed some missing Internationalization functions to BPs Change 3422767 on 2017/05/04 by Yannick.Lange ViewportInteraction: Extensibility for dragging on gizmo handles Removed ETransformGizmoInteractionType completely and replaced it with UViewportDragOperation. Using the ETransformGizmoInteractionType enum made external extensibility impossible. Now every gizmo handle group has a component called UViewportDragOperationComponent which holds a UViewportDragOperation of a certain type. This UViewportDragOperation can be inherited to create a custom method to calculate a new transform for the objects when dragging the gizmo handle. Change 3422789 on 2017/05/04 by Yannick.Lange ViewportInteraction: Fix duplicate console variable. Change 3422817 on 2017/05/04 by Andrew.Rodham Sequencer: Changed level sequence object references to always use a package and object path based lookup - Newly created binding references now consist of a package name and an inner object path for actors, and just an inner object path for components. The package name is fixed up dynamically for PIE, which means it can work correctly for multiplayer PIE, and when levels are streamed in during PIE (functionality previously unavailable to lazy object ptrs) - Added a way of rebinding all possessable objects in the current sequence (Rebind Possessable References) - Level sequence binding references no longer use native serialization now that TMap serialization is fully supported. - Multiple bindings are now supported in the API layer of level sequence references, although this is not yet exposed to the sequencer UI. #jira UE-44490 Change 3422826 on 2017/05/04 by Andrew.Rodham Removed erroneous braces Change 3422874 on 2017/05/04 by James.Golding Adding MaterialEditingLibrary to allow manipulation of materials within the editor. - Refactored code out of MaterialEditor where possible Marked some material types as BP-accessible, to allow to editor-Blueprint access. Remove unused 'bSkipPrim' property from Set/CheckMaterialUsage Change 3422942 on 2017/05/04 by Lauren.Ridge Tab padding adjustment to allow tabs with icons to be the same height as tabs without Change 3423090 on 2017/05/04 by Jamie.Dale Added a way to get the source package path for a localized package path Added tests for the localized package path checks. Change 3423133 on 2017/05/04 by Jamie.Dale Fixed a bug where a trailing quote without a newline at the end of a CSV file would be added to the parsed text rather than converted to a terminator Change 3423301 on 2017/05/04 by Max.Chen Sequencer: Add JumpToPosition which updates to a position in a scrubbing state. Change 3423344 on 2017/05/04 by Jamie.Dale Updated localized asset group caching so that it works in non-cooked builds Change 3423486 on 2017/05/04 by Lauren.Ridge Fixing deselection code in VWI Change 3423502 on 2017/05/04 by Jamie.Dale Adding automated localization tests Change 3424219 on 2017/05/04 by Yannick.Lange - Hide FWidget when ViewportWorldInteraction starts. - Added option to EditorViewportClient to not render FWidget without using FWidget::SetDefaultVisibility. Change 3425116 on 2017/05/05 by Matt.Kuhlenschmidt PR #3527: Modified comments (Contributed by projectgheist) Change 3425239 on 2017/05/05 by Matt.Kuhlenschmidt Fix shutdown crash in projects that unregister asset tools in UObjects being destroyed at shutdown. Change 3425241 on 2017/05/05 by Max.Chen Sequencer: Components aren't deselected from the sequencer tree view when they get deselected in the viewport/outliner. #jira UE-44559 Change 3425286 on 2017/05/05 by Jamie.Dale Text duplicated as part of a widget archetype now maintains its existing key #jira UE-44715 Change 3425477 on 2017/05/05 by Andrew.Rodham Sequencer: Do not deprecate legacy object references since they still need to be serialized on save - Also re-add identical via equality operator so that serialization works again Change 3425681 on 2017/05/05 by Jamie.Dale Fixed fallback font height/baseline measuring Change 3426137 on 2017/05/05 by Jamie.Dale Removing PPF_Localized It's an old UE3-ism that's no longer tested anywhere Change 3427434 on 2017/05/07 by Yannick.Lange ViewportInteraction: Null check for viewport. Change 3427905 on 2017/05/08 by Matt.Kuhlenschmidt Removed the concept of a global selection annotation. This poses a major problem when more than one selection set is clearing it. If more than one selection set is in a transaction the last one to be serialized will clear and rebuild the annotation thus causing out of sync issues with component and actor selection sets. This change introduces the concept of a per-selection set annotation to avoid being out of sync. Actor and ActorComponent now override IsSelected (editor only) to make use of these selections. #jira UE-44655 Change 3428738 on 2017/05/08 by Matt.Kuhlenschmidt Fix other usage of USelection not having a selection annotation #jira UE-44786 Change 3429562 on 2017/05/08 by Matt.Kuhlenschmidt Fix crash on platforms without a cursor #jira UE-44815 Change 3429862 on 2017/05/08 by tim.gautier QAGame: Enable Include CrashReporter in Project Settings Change 3430385 on 2017/05/09 by Lauren.Ridge Resetting user focus to game viewport after movie finishes playback #jira UE-44785 Change 3430695 on 2017/05/09 by Lauren.Ridge Fix for crash on leaving in the middle of a loading movie #jira UE-44834 Change 3431234 on 2017/05/09 by Matt.Kuhlenschmidt Fixed movie player setting all users to focus which breaks VR controllers [CL 3432852 by Matt Kuhlenschmidt in Main branch]
2017-05-10 11:49:32 -04:00
.IsEnabled( this, &SSourceControlSubmitWidget::CanCheckOut )
[
SNew(STextBlock)
.Text(NSLOCTEXT("SourceControl.SubmitPanel", "KeepCheckedOut", "Keep Files Checked Out") )
]
]
]
+SVerticalBox::Slot()
.AutoHeight()
.HAlign(HAlign_Right)
.VAlign(VAlign_Bottom)
.Padding(0.0f,0.0f,0.0f,5.0f)
[
SNew(SUniformGridPanel)
.SlotPadding(FEditorStyle::GetMargin("StandardDialog.SlotPadding"))
.MinDesiredSlotWidth(FEditorStyle::GetFloat("StandardDialog.MinDesiredSlotWidth"))
.MinDesiredSlotHeight(FEditorStyle::GetFloat("StandardDialog.MinDesiredSlotHeight"))
+SUniformGridPanel::Slot(0,0)
[
SNew(SButton)
.HAlign(HAlign_Center)
.ContentPadding(FEditorStyle::GetMargin("StandardDialog.ContentPadding"))
.IsEnabled(this, &SSourceControlSubmitWidget::IsOKEnabled)
.Text( NSLOCTEXT("SourceControl.SubmitPanel", "OKButton", "Submit") )
.OnClicked(this, &SSourceControlSubmitWidget::OKClicked)
]
+SUniformGridPanel::Slot(1,0)
[
SNew(SButton)
.HAlign(HAlign_Center)
.ContentPadding(FEditorStyle::GetMargin("StandardDialog.ContentPadding"))
.Text( NSLOCTEXT("SourceControl.SubmitPanel", "CancelButton", "Cancel") )
.OnClicked(this, &SSourceControlSubmitWidget::CancelClicked)
]
]
]
];
RequestSort();
DialogResult = ESubmitResults::SUBMIT_CANCELED;
KeepCheckedOut = ECheckBoxState::Unchecked;
ParentFrame.Pin()->SetWidgetToFocusOnActivate(ChangeListDescriptionTextCtrl);
}
/** Corvus: Called to create a context menu when right-clicking on an item */
TSharedPtr<SWidget> SSourceControlSubmitWidget::OnCreateContextMenu()
{
if (SSourceControlSubmitWidget::CanDiffAgainstDepot())
{
FMenuBuilder MenuBuilder(true, NULL);
MenuBuilder.BeginSection("Source Control", NSLOCTEXT("SourceControl.SubmitWindow.Menu", "SourceControlSectionHeader", "Source Control"));
{
MenuBuilder.AddMenuEntry(
NSLOCTEXT("SourceControl.SubmitWindow.Menu", "DiffAgainstDepot", "Diff Against Depot"),
NSLOCTEXT("SourceControl.SubmitWindow.Menu", "DiffAgainstDepotTooltip", "Look at differences between your version of the asset and that in source control."),
FSlateIcon(FEditorStyle::GetStyleSetName(), "SourceControl.Actions.Diff"),
FUIAction(
FExecuteAction::CreateSP(this, &SSourceControlSubmitWidget::OnDiffAgainstDepot),
FCanExecuteAction::CreateSP(this, &SSourceControlSubmitWidget::CanDiffAgainstDepot)
)
);
}
MenuBuilder.EndSection();
return MenuBuilder.MakeWidget();
}
else
{
return nullptr;
}
}
bool SSourceControlSubmitWidget::CanDiffAgainstDepot() const
{
bool bCanDiff = false;
const auto& SelectedItems = ListView->GetSelectedItems();
if (SelectedItems.Num() == 1)
{
bCanDiff = SelectedItems[0]->CanDiff();
}
return bCanDiff;
}
void SSourceControlSubmitWidget::OnDiffAgainstDepot()
{
const auto& SelectedItems = ListView->GetSelectedItems();
if (SelectedItems.Num() == 1)
{
OnDiffAgainstDepotSelected(SelectedItems[0]);
}
}
void SSourceControlSubmitWidget::OnDiffAgainstDepotSelected(TSharedPtr<FSubmitItem> InSelectedItem)
{
FString PackageName;
if (FPackageName::TryConvertFilenameToLongPackageName(InSelectedItem->GetFilename(), PackageName))
{
TArray<FAssetData> Assets;
FAssetRegistryModule& AssetRegistryModule = FModuleManager::LoadModuleChecked<FAssetRegistryModule>(TEXT("AssetRegistry"));
AssetRegistryModule.Get().GetAssetsByPackageName(*PackageName, Assets);
if (Assets.Num() == 1)
{
const FAssetData& AssetData = Assets[0];
UObject* CurrentObject = AssetData.GetAsset();
if (CurrentObject)
{
const FString AssetName = AssetData.AssetName.ToString();
FAssetToolsModule& AssetToolsModule = FModuleManager::GetModuleChecked<FAssetToolsModule>("AssetTools");
AssetToolsModule.Get().DiffAgainstDepot(CurrentObject, PackageName, AssetName);
}
}
}
}
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3739701) #lockdown Nick.Penwarden #rb none ============================ MAJOR FEATURES & CHANGES ============================ Change 3358367 by tim.gautier Submitting resaved QAGame assets - Materials, Material Instances, Material Functions and Parameters Change 3624848 by Jamie.Dale Added a composite font for the editor (and Slate core) This is defined in FLegacySlateFontInfoCache::GetDefaultFont and uses our default Roboto fonts (and the culture specific fallback fonts), and is now used as the default font for Slate and the editor. This change removes all the manual TTF/OTF file references from the various Slate styles, as well as updating 200+ hard-coded font references to use the new default font. This fixes various rendering issues with fonts in the editor when using different languages, and clears a big barrier for removing the legacy localized fallback font support. Change 3654993 by Jamie.Dale 'Native' (now called 'FNativeFuncPtr') is now a function pointer that takes a UObject* context, rather than a UObject member function pointer This avoids ambiguity when binding a native function pointer to a type that doesn't match the context pointer, as you could end up getting a function called with an incorrect 'this' pointer Breaking changes: - Native has been renamed to FNativeFuncPtr. - The signature of a native function has changed (use the DECLARE_FUNCTION and DEFINE_FUNCTION macro pair). - Use P_THIS if you were previously using the 'this' pointer in your native function. Change 3699591 by Jamie.Dale Added support for displaying and editing numbers in a culture correct way Numeric input boxes in Slate will now display and accept numbers using the culture correct decimal separators. This is enabled by default, and can be disabled by setting "ShouldUseLocalizedNumericInput" to "False" in XEditorSettings.ini (for the editor), or XGameUserSettings.ini (for a game). #jira UE-4028 Change 3719568 by Jamie.Dale Allow platforms to override the default ICU timezone calculation Change 3622366 by Bradut.Palas #jira UE-46677 Don't allow OnLevelRemovedFromWorld to reset the transaction buffer if we're in PIE mode. Also, remove one undo barrier in case the event was triggered in PIE mode or else we block the user from undoing previous actions. Change 3622378 by Bradut.Palas #jira UE-46590 we have a general bug with detecting the size of the last column, but the clamping prevents it from appearing with the other resize modes. The Content Browser is the only one to use fixed width. The bug is that the size of the last element is incorrectly reported, after we drag back and forth. Fixed by not reading the size real time, but reading it from the SlotInfo structure that is created earlier, which holds the correct value. Change 3622552 by Jamie.Dale Added support for per-culture sub-fonts within a composite font This allows you to do things like create a Japanese specific Han sub-font to override the Han characters used in a CJK font (previously you needed to create a localized font asset to achieve this). Change 3623170 by Jamie.Dale Fixing warning Change 3624846 by Jamie.Dale Composite font cache optimizations - Converted a typically small sized map to a sorted array + binary search. - Converted the already sorted range array to use binary search. - Contiguous ranges using the same typeface are now merged in the cache. Change 3625576 by Cody.Albert We now only set the widget tree to transient instead of passing the flag through StaticDuplicateObject. This was causing instanced subobjects to be flagged with RF_DuplicateTransient, preventing them from properly being duplicated when an array of instanced subobjects was modified. #jira UE-47971 Change 3626057 by Matt.Kuhlenschmidt Expose EUmgSequencePlayMode to blueprints #jira UE-49255 Change 3626556 by Matt.Kuhlenschmidt Fix window size and position adjustment not accounting for primary monitor not being a high DPI monitor when a secondary monitor is. Causes flickering and incorrect window positioning. #jira UE-48922, UE-48957 Change 3627692 by Matt.Kuhlenschmidt PR #3977: Source control submenu menu customization (Contributed by Kryofenix) Change 3628600 by Arciel.Rekman Added AutoCheckout to FAssetRenameManager for commandlet usage. Change 3630561 by Richard.Hinckley Deprecating the version of UFunctionalTestingManager::RunAllFunctionalTests that feature an unused bool parameter, replacing with a new version without that parameter. Change 3630656 by Richard.Hinckley Compile fix. Change 3630964 by Arciel.Rekman Fix CrashReporterClient headless build. Change 3631050 by Matt.Kuhlenschmidt Back out revision 9 from //UE4/Dev-Editor/Engine/Source/Runtime/Slate/Private/Widgets/Layout/SSplitter.cpp Causes major problems with resizing splitters in editor Change 3631140 by Arciel.Rekman OpenAL: update Linux version to 1.18.1 (UETOOL-1253) - Also remove a hack for RPATH and make it use a generic RPATH mechanism. - Bulk of the change from Cengiz.Terzibas #jira UETOOL-1253 Change 3632924 by Jamie.Dale Added support for a catch-all fallback font within composite fonts This allows you to provide broad "font of last resort" behavior on a per-composite font basis, in a way that can also work with different font styles. Change 3633055 by Jamie.Dale Fixed some refresh issues in the font editor Change 3633062 by Jamie.Dale Fixed localization commands being reported as unknown Change 3633906 by Nick.Darnell UMG - You can now store refrences to widgets in the same UserWidget. If you need to create links between widgets this is valuable. Will likely introduce new ways to utilize this in the future, for now just getting it working. Change 3634070 by Arciel.Rekman Display actually used values of material overrides. Change 3634254 by Arciel.Rekman Fix ResavePackages working poorly with projects on other drives (UE-49465). #jira UE-49465 Change 3635985 by Matt.Kuhlenschmidt Fixed typo in function name used by maps PR #3975: Add tooltip to Arrays in Editor (Contributed by projectgheist) Change 3636012 by Matt.Kuhlenschmidt PR #3982: Unhide mouse cursor after using Ansel (Contributed by projectgheist) Change 3636706 by Lauren.Ridge Epic Friday: Save parameters to child or sibling instance functionality Change 3638706 by Jamie.Dale Added an improved Japanese font to the editor This is only used when displaying Japanese text when the editor is set to Japanese, and uses a font with Japanese-style unified Han characters (our default fallback font uses Chinese-style unified Han characters). #jira UE-33268 Change 3639438 by Arciel.Rekman Linux: Repaired ARM server build (UE-49635). - Made Steam* plugins compile. - Disabled OpenEXR as the libs aren't compiled (need to be done separately). (Edigrating CL 3639429 from Release-4.17 to Dev-Editor) Change 3640625 by Matt.Kuhlenschmidt PR #4012: FSlateApplication::ProcessReply use &Reply (Contributed by projectgheist) Change 3640626 by Matt.Kuhlenschmidt PR #4011: Remove space from filename (Contributed by projectgheist) Change 3640697 by Matt.Kuhlenschmidt PR #4010: PNG alpha fix (Contributed by mmdanggg2) Change 3641137 by Jamie.Dale Fixed an issue where a culture specific sub-font could produce incorrect measurements during a culture switch It would fallback to the last resort font for a frame or two while the font cache flushed. This has it update the ranges immediately. Change 3641351 by Jamie.Dale Fixing incorrect weights on the Japanese sub-font Change 3641356 by Jamie.Dale Fixing inconsistent font sizes between CoreStyle and EditorStyle Change 3641710 by Jamie.Dale Fixed pure-virtual function call on UMulticastDelegateProperty Change 3641941 by Lauren.Ridge Adding a Parameter Details tab to the Material Editor so users can change default parameter details Change 3644141 by Jamie.Dale Added an improved Korean font to the editor This is only used when displaying Korean text when the editor is set to Korean Change 3644213 by Arciel.Rekman Fix the side effects of a fix for UE-49465. - Default materials were apparently not being found while building DDC (e.g. making an installed build), now they are and we should not reset loaders on them lest we trigger HasDefaultMaterialsPostLoaded() assert later. #jira UE-49465 Change 3644777 by Jamie.Dale Reverting Korean editor font back to NanumGothic as NanumBarunGothic looked too squished Change 3644879 by tim.gautier QAGame: Optimized assets for Procedural Foliage testing - Added camera bookmarks to Stations in QA-Foliage - Renamed QA-FoliageTypeInst assets to ProcFoliage_Shape - Fixed up redirectors Change 3645109 by Matt.Kuhlenschmidt PR #3990: Git plugin: fix status of renamed, removed, missing, untracked assets (Contributed by SRombauts) Change 3645114 by Matt.Kuhlenschmidt PR #3991: Git Plugin: Fix RunDumpToFile() leaking Process handles (Contributed by SRombauts) Change 3645116 by Matt.Kuhlenschmidt PR #3996: Git Plugin: run an "UpdateStatus" at "Connect" time to populate the Source Control cache (Contributed by SRombauts) Change 3645118 by Matt.Kuhlenschmidt PR #4005: Git Plugin: Expand the size of the Button "Initialize project with Git" (Contributed by SRombauts) Change 3645876 by Arciel.Rekman Linux: fix submenus of context menu not working (UE-47639). - Change by icculus (Ryan Gordon). - QA-ClickHUD seems to be not affected by this change (it is already broken alas). #jira UE-47639 Change 3648088 by Jamie.Dale Fixed some case-sensitivity issues with FText format argument names/pins These were originally case-sensitive, but that was lost somewhere along the way. This change restores their original behavior. #jira UE-47122 Change 3648097 by Jamie.Dale Moved common macOS/iOS localization implementation into FApplePlatformMisc #jira UE-49940 Change 3650858 by Arciel.Rekman UBT: improve CodeLite project generator (UE-49400). - PR #3987 submitted by yaakuro (Cengiz Terzibas). #jira UE-49400 Change 3651231 by Arciel.Rekman Linux: default to SM5 for Vulkan. - Change by Timothee.Bessett. Change 3653627 by Matt.Kuhlenschmidt PR #4020: Source Control Submit Files now interprets Escape key as if the user clicked cancel (Contributed by SRombauts) Change 3653628 by Matt.Kuhlenschmidt PR #4022: Add New C++ Class dialog remember previously selected module. (Contributed by Koderz) Change 3653984 by Jamie.Dale Fixed some redundant string construction Change 3658528 by Joe.Graf UE-45141 - Added CMAKE_CXX_COMPILER and CMAKE_C_COMPILER settings to the generated CMake files Change 3658594 by Jamie.Dale Zipping in UAT now always uses UTF-8 encoding to prevent Unicode issues #jira UE-27263 Change 3659643 by Michael.Trepka Added a call to FCoreDelegates::ApplicationWillTerminateDelegate.Broadcast(); in Mac RequestExit() to match Windows behavior #jira UETOOL-1238 Change 3661908 by Matt.Kuhlenschmidt USD asset importing improvements Change 3664100 by Matt.Kuhlenschmidt Fix static analysis Change 3664107 by Matt.Kuhlenschmidt PR #4051: UE-49448: FPropertyChangedEvent to include TopLevelObjects (Contributed by projectgheist) Change 3664125 by Matt.Kuhlenschmidt PR #4036: Add missing GRAPHEDITOR_API (Contributed by projectgheist) Change 3664340 by Jamie.Dale PR #3648: Prevent GatherTextFromSource from failing the commandlet (Contributed by projectgheist) Change 3664403 by Jamie.Dale PR #3769: Fixes UE-46973 - Drag and Dropping Folders with Names (Contributed by LordNed) Change 3664539 by Jamie.Dale PR #3280: Added EditableText functionality (Contributed by projectgheist) Change 3665433 by Alexis.Matte When we finish importing morph target we must re-initialise the render resources since we now use GPU morph target. #jira UE-50231 Change 3666747 by Cody.Albert Change 3669280 by Jamie.Dale PR #4060: UE-50455: Verify folder is newly created before removing from tree (Contributed by projectgheist) Change 3669718 by Jamie.Dale PR #4061: Clear Content Browser folder search box on escape key (Contributed by projectgheist) Change 3670838 by Alexis.Matte Fix crash when deleting a skeletal mesh LOD and the mouse is over the "reimport" button. #jira UE-50387 Change 3671559 by Matt.Kuhlenschmidt Update SimpleUI automation test ground truth #jira UE-50325 Change 3671587 by Alexis.Matte Fix fbx importer scale not always apply. A cache array was not reset when opening a fbx file. #jira UE-50147 Change 3671730 by Jamie.Dale Added PostInitInstance to UClass to allow class types to perform construction time initialization of their instances Change 3672104 by Michael.Dupuis #jira UE-50427: Update the volume visibility list of the editor viewport when changing the procedural foliage settings Change 3674906 by Alexis.Matte Make sure the export LOD option is taken in consideration when exporting a level or the current level selection #jira UE-50248 Change 3674942 by Matt.Kuhlenschmidt Fix static analysis Change 3675401 by Alexis.Matte -fix export animation, do not truncate the last frame anymore -fix the import animation, there was a display issue in the progress bar. Also a floorToInt sometime truncate the last valid frame. We also have a better way to calculate the time increment we use to sample the fbx curves. #jira UE-48231 Change 3675990 by Alexis.Matte Remove morph target when doing a re-import, so morph will be remove if they do not exist anymore in the fbx. This is to avoid driving random vertex with old morph target. #jira UE-50391 Change 3676169 by Alexis.Matte When we re-import with dialog the option, "Override Full Name" was set to false and save with the option dialog. We now not set it to false, since it was not use during re-import. Change 3676396 by Alexis.Matte Make all LOD 0 name consistent in staticmesh editor #jira UE-49461 Change 3677730 by Cody.Albert Enable locking of Persistent Level in Levels tab #jira UE-50686 Change 3677838 by Jamie.Dale Replaced broken version of Roboto Light Change 3679619 by Alexis.Matte Integrate GitHub pr #4029 to fix import fbx chunk material assignation. #jira UE-50001 Change 3680093 by Alexis.Matte Fix the skeletal mesh so the vertex color is part of the vertex equality like with the static mesh. Change 3680931 by Arciel.Rekman SlateDialogs: show image icon for *.tga (UE-25106). - Also reworked the logic somewhat. #jira UE-25106 Change 3681966 by Yannick.Lange MaterialEditor post-process preview. #jira UE-45307 Change 3682407 by Lauren.Ridge Fixes for material editor compile errors Change 3682628 by Lauren.Ridge Content browser filters for Material Layers, Blends, and their instances Change 3682725 by Lauren.Ridge Adding filter assets and instance assets to Material Layers and Material Layer Blends. Turning Material Layering on by default Change 3682921 by Lauren.Ridge Fix for instance layers not initializing fully Change 3682954 by Lauren.Ridge Creating Material Layer Test Assets Change 3683582 by Alexis.Matte Fix static analysis build Change 3683614 by Matt.Kuhlenschmidt PR #4062: Git Plugin: Fix UE-44637: Deleting an asset is unsuccessful if the asset is marked for add (Contributed by SRombauts) Change 3684130 by Lauren.Ridge Allow visible parameter retrieval to correctly recurse through internally called functions. Previous check was intended to prevent function previews from leaving their graph through unhooked inputs, but unintentionally blocked all function inputs. Change 3686289 by Arciel.Rekman Remove the pessimization (UE-23791). Change 3686455 by Lauren.Ridge Fixes for adding/removing a layer parameter from the parent not updating the child Change 3686829 by Jamie.Dale No longer include trailing whitespace in the justification calculation for soft-wrapped lines #jira UE-50266 Change 3686970 by Lauren.Ridge Making material parameter preview work for functions as well Change 3687077 by Jamie.Dale Fixed crash using FActorDetails with the struct details panel Change 3687152 by Jamie.Dale Fixed the row structure tag not appearing in the Content Browser for Data Table assets The CDO is used to filter these tags, and the CDO was omiting that tag which caused it to be filtered for all Data Tables. #jira UE-48691 Change 3687174 by Lauren.Ridge Fix for material layer sub-parameters showing up in the default material parameters panel Change 3688100 by Lauren.Ridge Fixing static analysis error Change 3688317 by Jamie.Dale Fixed crash using the widget reflector in a cooked game Editor-style isn't available in cooked games. Core-style should be used instead for the widget reflector. Change 3689054 by Jamie.Dale Reference Viewer can now show/copy references lists for nodes with multiple objects, or multiple selected nodes #jira UE-45751 Change 3689513 by Jamie.Dale Fixed justification bug with RTL text caused by CL# 3686829 Also implemented the same alignment fix for visually left-aligned RTL text. #jira UE-50266 Change 3690231 by Lauren.Ridge Added Material Layers Parameters Preview (all editing disabled) panel to the Material Editor Change 3690234 by Lauren.Ridge Adding Material Layers Function Parameter to Static Parameter Compare Change 3690750 by Chris.Bunner Potential nullptr crash. Change 3690751 by Chris.Bunner Fixed logic on overridden vector parameter retrieval for material instances checking a function owned parameter. Change 3691010 by Jamie.Dale Fixed some clipping issues that could occur with right-aligned text FTextBlockLayout::OnPaint was passing an unscaled offset to SetVisibleRegion, and it also wasn't correctly adjusting the offset for RTL text with left-alignment (which becomes a visual right-alignment) #jira UE-46760 Change 3691091 by Jamie.Dale Renamed FTextBlockLayout to FSlateTextBlockLayout to reflect that it's a Slate specific type Change 3691134 by Alexis.Matte Make sure we instance also the collision mesh when exporting a level to fbx file. #jira UE-51066 Change 3691157 by Lauren.Ridge Fix for reset to default not refreshing sub-parameters Change 3691192 by Jamie.Dale Fixed Content Browser selection resetting when changing certain view settings #jira UE-49611 Change 3691204 by Alexis.Matte Remove fbx export file version 2010 compatibility. The 2018 fbx sdk refuse to export earlier then 2011. #jira UE-51023 Change 3692335 by Lauren.Ridge Setting displayed asset to equal filter asset if no instance has been selected Change 3692479 by Jamie.Dale Fixed whitespace Change 3692508 by Alexis.Matte Make sure we warn the user that there is nothing to export when exporting to fbx using "export selected" or "export All" from the file menu. We also prevent the export dialog to show #jira UE-50973 Change 3692639 by Jamie.Dale Translation Editor now shows stale translations as "Untranslated" Change 3692743 by Lauren.Ridge Smaller blend icons, added icon size override to FObjectEntryBox Change 3692830 by Alexis.Matte Fix linux build Change 3692894 by Lauren.Ridge Tooltip on "Parent" in material layers Change 3693141 by Jamie.Dale Removed dead code FastDecimalFormat made this redundant Change 3693580 by Jamie.Dale Added AlwaysSign number formatting option #jira UE-10310 Change 3693784 by Jamie.Dale Fixed assert extracting the number formatting rules for Arabic It uses a character outside the BMP for its plus and minus sign, so we need these to be a string to handle that. #jira UE-10310 Change 3694428 by Arciel.Rekman Linux: make directory watch request a warning so they don't block cooking. - See https://answers.unrealengine.com/questions/715206/cook-error-on-linux.html Change 3694458 by Matt.Kuhlenschmidt Made duplicate keybinding warning non-fatal Change 3694496 by Alexis.Matte fix static analysis build Change 3694515 by Jamie.Dale Added support for culture correct parsing of decimal numbers #jira UE-4028 Change 3694621 by Jamie.Dale Added a variant of FastDecimalFormat::StringToNumber that takes a string length This can be useful if you want to convert a number from within a non-null terminated string #jira UE-4028 Change 3694958 by Jamie.Dale Added a parsed length output to FastDecimalFormat::StringToNumber to allow permissive parsing You can test this rather than the result if you want to attempt to parse a number from a string that may have other data after it. This also fixes the sign-suffix causing the parsing to fail. #jira UE-4028 Change 3695083 by Alexis.Matte Optimisation of the morph target import - We now compute only the normal for the shape the tangent are not necessary - The async tasks are create when there is some available cpu thread to avoid filling the memory - When we re-import the morph target are deleted in bulk avoiding to initialize the morph map for every morphs targets #jira UE-50945 Change 3695122 by Jamie.Dale GetCultureAgnosticFormattingRules no longer returns a copy Change 3695835 by Arciel.Rekman TestPAL: greatly expanded malloc test. Change 3695918 by Arciel.Rekman TestPAL: Added thread priority test. Change 3696589 by Arciel.Rekman TestPAL: tweak thread priorities test (better readability). Change 3697345 by Alexis.Matte Fix reorder of material when importing a LOD with new material #jira UE-51135 Change 3699590 by Jamie.Dale Updated SGraphPinNum to use a numeric editor #jira UE-4028 Change 3699698 by Matt.Kuhlenschmidt Fix crash opening the level viewport context menu if the actor-component selection is out of sync #jira UE-48444 Change 3700158 by Arciel.Rekman Enable packaging for Android Vulkan on Linux (UETOOL-1232). - Change by Cengiz Terzibas Change 3700224 by Arciel.Rekman TestPAL: fixed a memory leak. Change 3700775 by Cody.Albert Don't need to initialize EnvironmentCubeMap twice. Change 3700866 by Michael.Trepka PR #3223: Remove unnecessary reallocation. (Contributed by foollbar) #jira UE-41643 Change 3701132 by Michael.Trepka Copy of CL 3671538 Fixed issues with editor's game mode in high DPI on Mac. #jira UE-49947, UE-51063 Change 3701421 by Michael.Trepka Fixed a crash in FScreenShotManager caused by an attempt to access a deleted FString in async lambda expression Change 3701495 by Alexis.Matte Fix fbx importer "import normals" option when mix with "mikkt" tangent build it was recomputing the normals instead of importing them. #jira UE-UE-51359 Change 3702982 by Jamie.Dale Cleaned up some localization setting names These now have consistent names and avoid double negatives. This also fixes needing to restart the editor when changing the "ShouldUseLocalizedPropertyNames" setting. Change 3703517 by Arciel.Rekman TestPAL: improved thread test. - Changed the counter to a normal variable to reduce possible contentions (threads used to share the counter in an early prototype, hence the usage of an atomic). Change 3704378 by Michael.Trepka Disable Zoom button on Mac if project requests a resizeable window without it. #jira UE-51335 Change 3706316 by Jamie.Dale Fixed the asset search suggestions list closing if you clicked on its scrollbar #jira UE-28885 Change 3706855 by Alexis.Matte Support importing animation that has some keys with negative time #jira UE-51305 Change 3709634 by Matt.Kuhlenschmidt PR #4146: Null access check on ForceLOD in FViewport::HighResScreenshot (Contributed by projectgheist) Change 3711085 by Michael.Trepka Reenabled UBT makefiles on Mac Change 3713049 by Josh.Engebretson The ConfigPropertyEditor now generates a unique runtime UClass. It uses the outer name on the property instead of a unique ID as a unique id would generate a new UClass every time (and these are RF_Standalone). I also removed some static qualifiers for Section and Property names which were incorrect. #jira UE-51319 Change 3713144 by Lauren.Ridge Fixing automated test error #jira UE-50982 Change 3713395 by Alexis.Matte Fix auto import mountpoint #jira UE-51524 Change 3713881 by Michael.Trepka Added -buildscw to Mac Build.sh script to build ShaderCompileWorker in addition to the requested target. Xcode passes it to the script when building non-program targets. #jira UE-31093 Change 3714197 by Michael.Trepka Send IMM key down event to the main window instead of Cocoa key window, as that's what the Slate's active window is. This solves problems with IMM not working in context menu text edit fields. #jira UE-47915 Change 3714911 by Joe.Graf Merge of cmake changes from Dev-Rendering Change 3715973 by Michael.Trepka Disable OS close button on Windows if project settings request that #jira UE-45522 Change 3716390 by Lauren.Ridge The color picker summoned when double-clicking vector3 nodes now has its intended "do not refresh until OK is clicked" behavior. #jira UE-50916 Change 3716529 by Josh.Engebretson Content Browser: Clamp "Assets to Load at Once Before Warning" so it cannot be set below 1 #jira UE-51341 Change 3716885 by Josh.Engebretson Tracking transactions such as a duplication operation can modify a selection which differs from the initial one. Added package state tracking to restore unmodified state when necessary. #jira UE-48572 Change 3716929 by Josh.Engebretson Unshelved from pending changelist '3364093': PR #3420: Exe's icons and properties (Contributed by projectgheist) Change 3716937 by Josh.Engebretson Unshelved from pending changelist '3647428': PR #4026: Fixed memory leaks for pipe writes and added data pipe writes (Contributed by Hemofektik) Change 3717002 by Josh.Engebretson Fix FileReference/string conversion Change 3717355 by Joe.Graf Fixed CMake file generation on Windows including Engine/Source/ThirdParty source Change 3718256 by Arciel.Rekman TestPAL: slight mod to the malloc test. - Touch the allocated memory to check actual resident usage. Change 3718290 by Arciel.Rekman BAFO: place descriptor after the allocation to save some VIRT memory. - We're relying on passing correct "Size" argument to Free() anyway, and this modification makes use of that extra information to save on memory for the descriptor. Change 3718508 by Michael.Trepka Fixed vsnprintf on platforms that use our custom implementation in StandardPlatformString.cpp to ignore length modifier for certain types (floating point, pointer) #jira UE-46148 Change 3718855 by Lauren.Ridge Adding content browser favorite folders. Add or remove folders from the favorite list in the folder's right-click context menu, and hide or show the favorites list in the Content Browser options. Change 3718932 by Cody.Albert Update ActorSequence plugin loading phase to PreDefault #jira UE-51612 Change 3719378 by tim.gautier QAGame: Renamed multiTxt_Justification > UMG_TextJustification. Added additional Text Widgets for testing Change 3719413 by Lauren.Ridge Resubmit of content browser favorites Change 3719803 by Yannick.Lange VREditor: Fix crash with null GEditor #jira UE-50103 Change 3721127 by tim.gautier QAGame: Fixed up a ton of redirectors within /Content and /Content/Materials - Added M_ParamDefaults and MF_ParamDefaults - Moved legacy MeshPaint materials into /Content/Materials/MeshPaint - Renamed ColorPulse assets from MatFunction_ > MF_, moved into /Content/Materials/Functions Change 3721255 by Alexis.Matte Replace skeletal mesh import option "keep overlapping vertex" by 3 float thresholds allowing the user to control the welding thresholds. #jira UE-51363 Change 3721594 by Lauren.Ridge Material Blends now have plane mesh previews in their icons. Change 3722072 by tim.gautier QAGame: Updated MF_ParamDefaults - using red channel as roughness Updated M_ParamDefaults - tweaked Scalar values Change 3722180 by Michael.Trepka Updated Xcode project generator to sort projects in the navigator by name (within folders) and also sort the list of schemes so that their order matches the order of projects in the navigator. #jira UE-25941 Change 3722220 by Michael.Trepka Fixed a problem with Xcode project generator not handling quoted preprocessor definitions correctly #jira UE-40246 Change 3722806 by Lauren.Ridge Fixing non-editor compiles Change 3722914 by Alexis.Matte Fbx importer: Add new attribute type(eSkeleton) for staticmesh socket import. #jira UE-51665 Change 3723446 by Michael.Trepka Copy of CL 3688862 from 4.18 + one more fix for a deadlock related to window resizing when using IME Don't do anything in Mac window's windowWillResize: if we're simply chaning the z order of windows. This way we avoid a rare dead lock when hiding the window. #jira UE-48257 Change 3723505 by Matt.Kuhlenschmidt Fix duplicate actors being created for USD primitives that specify a custom actor class Change 3723555 by Matt.Kuhlenschmidt Fix crash loading the gameplayabilities module #jira UE-51693 Change 3723557 by Matt.Kuhlenschmidt Fixed tooltip on viewport dpi scaling option Change 3723870 by Lauren.Ridge Fixing incorrect reset to default visibility, adding clear behavior to fields Change 3723917 by Arciel.Rekman Linux: fix compilation with glibc 2.26+ (UE-51699). - Fixes compilation on Ubuntu 17.10 among others. (Merging 3723489 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...) Change 3723918 by Arciel.Rekman Linux: do not test for popcnt presence unnecessarily (UE-51677). (Merging 3723904 from //UE4/Release-4.18/... to //UE4/Dev-Editor/...) Change 3724229 by Arciel.Rekman Fix FOutputDeviceStdOutput to use printf() on Unix platforms. Change 3724261 by Arciel.Rekman TestPAL: fix thread priority test (zero the counter). Change 3724978 by Arciel.Rekman Linux: fix priority calculation. - Rlimit values are always positive, so this was completely broken when the RLIMIT_NICE is non-0. Change 3725382 by Matt.Kuhlenschmidt Guard against crashes and add more logging when actor creation fails. Looks like it could be manual garbage collections triggered before conversion is complete so those have been removed #jira UE-47464 Change 3725559 by Matt.Kuhlenschmidt Added a setting to enable/disable high dpi support in editor. This currently only functions in Windows. Moved some files around for better consistency Change 3725640 by Arciel.Rekman Fix Linux thread/process priorities. - Should also speed up SCW on Linux by deprioritizing them less. Change 3726101 by Matt.Kuhlenschmidt Fix logic bug in USD child "kind" type resolving Change 3726244 by Joe.Graf Added an option to generate a minimal set of targets for cmake files Added shader and config files to cmake file generation for searching within IDEs Change 3726506 by Arciel.Rekman Fix compile issue after DPI change. Change 3726549 by Matt.Kuhlenschmidt Remove unnecessary indirection to cached widgets in the hit test grid Change 3726660 by Arciel.Rekman Enable DPI switch on Linux. Change 3726763 by Arciel.Rekman Fix mismatching "noperspective" qualifier (UE-50807). - Pull request #4080 by TTimo. Change 3727080 by Michael.Trepka Added support for editor's EnableHighDPIAwareness setting on Mac Change 3727658 by Matt.Kuhlenschmidt Fix shutdown crash if level editor is still referenced after the object system has been gc'd #jira UE-51630 Change 3728270 by Matt.Kuhlenschmidt Remove propertyeditor dependency from editorstyle Change 3728291 by Arciel.Rekman Linux: fix for a crash on a headless system (UE-51714). - Preliminary change before merging to 4.18. Change 3728293 by Arciel.Rekman Linux: remove unneeded dependency on CEF. - Old workaround should no longer be needed, while this dependency makes UE4 depend on a ton of external libs. Change 3728524 by Michael.Trepka Copy of CL 3725570 Removed Enable Fullscreen option from editor's Window menu on Mac. Windowed fullscreen mode is currently unavailable on Mac in editor mode as supporting it properly would require it to work with multiple spaces and split screen, which we currently don't handle (requested in UE-27240) #jira UE-51709 Change 3728875 by Michael.Trepka Fixed compile error in Mac SlateOpenGLContext.cpp Change 3728880 by Matt.Kuhlenschmidt Guard against invalid worlds in thumbnail renderers Change 3728924 by Michael.Trepka Don't defer MacApplication->CloseWindow() call. This should fix a rare problem with deferred call executing during Slate's PrepassWindowAndChildren call. #jira UE-51711 Change 3729288 by Joe.Graf Added the .idea/misc.xml file generation to speed up CLion indexing Change 3729935 by Michael.Dupuis #jira UE-51722: Hide from UI invalid enum values Change 3730234 by Matt.Kuhlenschmidt Fix "Game Gets Mouse Control" setting no longer functioning and instead the mouse was always captured. #jira UE-51801 Change 3730349 by Michael.Dupuis #jira UE-51324: Clear the UI selection when rebuilding the palette, as we destroyed all items and recreate them, so selection is on invalid item Change 3730438 by Lauren.Ridge Cleaning up material layering UI functions Change 3730723 by Jamie.Dale Fixed FastDecimalFormat::StringToNumber incorrectly reporting that number-like sequences that lacked digits had been parsed as numbers #jira UE-51799 Change 3731008 by Lauren.Ridge Changing Layers and Blends from proxy assets to real assets Change 3731026 by Arciel.Rekman libelf: make elf_end() visible (UE-51843). - This repairs compilation for a case when CUDA is being used. - Also added some missing files for ARM 32-bit. Change 3731081 by Lauren.Ridge New material layer test assets Change 3731186 by Josh.Engebretson Adding camera speed scalar setting and Toolbar UI to increase range on camera speed presets #jira UE-50104 Change 3731188 by Mike.Erwin Improve responsiveness of Open Asset dialog. On large projects, there's a noticeable delay when opening and searching/filtering assets. Stopwatch measurements on my machine (seconds for ~122,000 assets): before with this CL ctrl-P 1.4 0.45 search 1.8 0.55 CollectionManagerModule was the main culprit for search/filter slowness. Open Asset delay was due to filtering out plugin content. We were doing a lot of redundant work for what is essentially a read-only operation. Change 3731682 by Arciel.Rekman UnrealEd: Allow unattended commandlets to rename/save packages. Change 3732305 by Michael.Dupuis #jira UE-48434 : Only register if the foliage type still has a valid mesh Change 3732361 by Matt.Kuhlenschmidt Fix two settings objects being created in the transient package with the same name #jira UE-51891 Change 3732895 by Josh.Engebretson https://jira.it.epicgames.net/browse/UE-51706 If a shared DDC is not being used, present a notification to the licensee with a link on how to setup a shared DDC. Adds DDC notification events for check/put and query for whether a shared DDC is in use. #jira UE-51706 Change 3733025 by Arciel.Rekman UBT: make sure new clang versions are invoked. Change 3733311 by Mike.Erwin Fix Linux compile warning from CL 3731188 It didn't like mixing && and || without parentheses. Reworked logic to do one test at a time, put cheaper tests first to avoid calls to more expensive IsPluginFolder. Change 3733658 by Josh.Engebretson Add a missing #undef LOCTEXT_NAMESPACE Change 3734003 by Arciel.Rekman Fix Windows attempting to use printf %ls and crashing at that (UE-51934). Change 3734039 by Michael.Trepka Fixed a couple of merge issues in Mac ApplicationCore Change 3734052 by Michael.Trepka One more Mac ApplicationCore fix Change 3734244 by Lauren.Ridge Fix for accessing Slate window on render thread Change 3734950 by Josh.Engebretson Fixing clang warning Change 3734978 by Jamie.Dale Relaxed enum property importing to allow valid numeric values to be imported too This was previously made more strict which caused a regression in Data Table importing #jira UE-51848 Change 3734999 by Arciel.Rekman Linux: add LTO support and more. - Adds ability to use link-time opitimization (reusing current target property bAllowLTCG). - Supports using llvm-ar and lld instead of ar/ranlib and ld. - More build information printed (and in a better organized way). - Native scripts updated to install packages with the appropriate tools on supported systems - AutoSDKs updated to require a new toolchain (already checked in). - Required disabling OpenAL due to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219089 Change 3735268 by Matt.Kuhlenschmidt Added support for canvas based DPI scaling. -Scene canvas is by default not scaled as this could severely impact any game using a canvas based UI -The debug canvas for stats is always dpi scaled in editor and pie. -Eliminated text scaling workaround now that the entire canvas is properly scaled -Enabled canvas scaling in cascade UI Change 3735329 by Matt.Kuhlenschmidt Fix potential crash if an asset editor has an object deleted out from under it #jira UE-51941 Change 3735502 by Arciel.Rekman Fix compile issue (bShouldUpdateScreenPercentage). Change 3735878 by Jamie.Dale Updated FString::SanitizeFloat to allow you to specify the min number of fractional digits to have in the resultant string This defaults to 1 as that was the old behavior of FString::SanitizeFloat, but can also be set to 0 to prevent adding .0 to whole numbers. Change 3735881 by Jamie.Dale JsonValue no longer stringifies whole numbers as floats Change 3735884 by Jamie.Dale Only allow enums to import integral values Change 3735912 by Josh.Engebretson Improving cook process error/warning handling including asset warning/error content browser links and manual dismiss for cook error notifications #jira UE-48131 Change 3736280 by Matt.Kuhlenschmidt Fix 0 dpi scale for canvases #jira UE-51995 Change 3736298 by Matt.Kuhlenschmidt Force focus of game viewports in vr mode Change 3736374 by Jamie.Dale Fixed some places where input chords were being used without testing that they had a valid key set #jira UE-51799 Change 3738543 by Matt.Kuhlenschmidt Better fix for edit condition crashes #jira UE-51886 Change 3738603 by Lauren.Ridge Copy over of drag and drop non-array onto array fix Change 3739701 by Chris.Babcock Fix crashlytics merge error #jira UE-52064 #ue4 #android [CL 3739980 by Matt Kuhlenschmidt in Main branch]
2017-11-06 18:22:01 -05:00
FReply SSourceControlSubmitWidget::OnKeyDown( const FGeometry& MyGeometry, const FKeyEvent& InKeyEvent )
{
// Pressing escape returns as if the user clicked cancel
if ( InKeyEvent.GetKey() == EKeys::Escape )
{
return CancelClicked();
}
return FReply::Unhandled();
}
TSharedRef<SWidget> SSourceControlSubmitWidget::GenerateWidgetForItemAndColumn(TSharedPtr<FSubmitItem> Item, const FName ColumnID) const
{
check(Item.IsValid());
const FMargin RowPadding(3, 0, 0, 0);
TSharedPtr<SWidget> ItemContentWidget;
if (ColumnID == SSourceControlSubmitWidgetDefs::ColumnID_CheckBoxLabel)
{
ItemContentWidget = SNew(SHorizontalBox)
+ SHorizontalBox::Slot()
.Padding(RowPadding)
[
SNew(SCheckBox)
.IsChecked(Item.Get(), &FSubmitItem::GetCheckBoxState)
.OnCheckStateChanged(Item.Get(), &FSubmitItem::SetCheckBoxState)
];
}
else if (ColumnID == SSourceControlSubmitWidgetDefs::ColumnID_IconLabel)
{
ItemContentWidget = SNew(SHorizontalBox)
+ SHorizontalBox::Slot()
.HAlign(HAlign_Center)
.VAlign(VAlign_Center)
[
SNew(SImage)
.Image(FEditorStyle::GetBrush(Item->GetIconName()))
.ToolTipText(Item->GetIconTooltip())
];
}
else if (ColumnID == SSourceControlSubmitWidgetDefs::ColumnID_FileLabel)
{
ItemContentWidget = SNew(SHorizontalBox)
+ SHorizontalBox::Slot()
.Padding(RowPadding)
[
SNew(STextBlock)
.Text(Item->GetDisplayName())
];
}
return ItemContentWidget.ToSharedRef();
}
ECheckBoxState SSourceControlSubmitWidget::GetToggleSelectedState() const
{
// Default to a Checked state
ECheckBoxState PendingState = ECheckBoxState::Checked;
// Iterate through the list of selected items
for (const auto& Item : ListViewItems)
{
if (Item->GetCheckBoxState() == ECheckBoxState::Unchecked)
{
// If any item in the list is Unchecked, then represent the entire set of highlighted items as Unchecked,
// so that the first (user) toggle of ToggleSelectedCheckBox consistently Checks all items
PendingState = ECheckBoxState::Unchecked;
break;
}
}
return PendingState;
}
void SSourceControlSubmitWidget::OnToggleSelectedCheckBox(ECheckBoxState InNewState)
{
for (const auto& Item : ListViewItems)
{
Item->SetCheckBoxState(InNewState);
}
ListView->RequestListRefresh();
}
void SSourceControlSubmitWidget::FillChangeListDescription(FChangeListDescription& OutDesc)
{
OutDesc.Description = ChangeListDescriptionTextCtrl->GetText();
OutDesc.FilesForAdd.Empty();
OutDesc.FilesForSubmit.Empty();
for (const auto& Item : ListViewItems)
{
if (Item->GetCheckBoxState() == ECheckBoxState::Checked)
{
if (Item->CanCheckIn())
{
OutDesc.FilesForSubmit.Add(Item->GetFilename());
}
else if (Item->NeedsAdding())
{
OutDesc.FilesForAdd.Add(Item->GetFilename());
}
}
}
}
bool SSourceControlSubmitWidget::WantToKeepCheckedOut()
{
return KeepCheckedOut == ECheckBoxState::Checked ? true : false;
}
FReply SSourceControlSubmitWidget::OKClicked()
{
DialogResult = ESubmitResults::SUBMIT_ACCEPTED;
ParentFrame.Pin()->RequestDestroyWindow();
return FReply::Handled();
}
FReply SSourceControlSubmitWidget::CancelClicked()
{
DialogResult = ESubmitResults::SUBMIT_CANCELED;
ParentFrame.Pin()->RequestDestroyWindow();
return FReply::Handled();
}
bool SSourceControlSubmitWidget::IsOKEnabled() const
{
return !ChangeListDescriptionTextCtrl->GetText().IsEmpty();
}
EVisibility SSourceControlSubmitWidget::IsWarningPanelVisible() const
{
return IsOKEnabled()? EVisibility::Hidden : EVisibility::Visible;
}
void SSourceControlSubmitWidget::OnCheckStateChanged_KeepCheckedOut(ECheckBoxState InState)
{
KeepCheckedOut = InState;
}
ECheckBoxState SSourceControlSubmitWidget::GetKeepCheckedOut() const
{
return KeepCheckedOut;
}
Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3431234) #lockdown Nick.Penwarden ========================== MAJOR FEATURES + CHANGES ========================== Change 3323393 on 2017/02/27 by Ben.Cosh This fixes an issue with actor details component selection causing actor selection to get out of sync across undo operations #Jira UE-40753 - [CrashReport] UE4Editor_LevelEditor!FLevelEditorActionCallbacks::Paste_CanExecute() [leveleditoractions.cpp:1602] #Proj Engine Change 3379355 on 2017/04/04 by Lauren.Ridge Adding sort priorities to Material Parameters and Parameter Groups. If sort priorities are equal, fallback to alphabetical sort. Default sort priority is 0, can be set on the parameter in the base material. Parameters are still sorted within groups.Group sort priority is set on the main material preferences. Change 3379389 on 2017/04/04 by Nick.Darnell Core - Removing several old macros that were referring to EMIT_DEPRECATED_WARNING_MESSAGE, which is no longer defined in the engine, so these macros are double deprecated. Change 3379551 on 2017/04/04 by Nick.Darnell Automation - Adding more logging to the automation controller when generating reports. Change 3379554 on 2017/04/04 by Nick.Darnell UMG - Making the WidgetComponent make more things caneditconst in the editor depending on what the settings are to make it more obvious what works in certain contexts. Change 3379565 on 2017/04/04 by Nick.Darnell UMG - Deprecating OPTIONA_BINDING, moving to PROPERTY_BINDING in place and you'll need to define a PROPERTY_BINDING_IMPLEMENTATION. Will make bindings safer to call from blueprints. Change 3379576 on 2017/04/04 by Lauren.Ridge Parameter group dropdown now sorts alphabetically Change 3379592 on 2017/04/04 by JeanMichel.Dignard Fbx Morph Targets import optimisation - Only reimport the points for each morphs and compute the tangents for the wedges affected by those points. - Removed the full skeletal mesh rebuild on each morph target import. - Allow MeshUtilities::ComputeTangents_MikkTSpace to only recompute the tangents that are zero. Gains around 7.30 mins for 785 morph targets in mikkt space and 1.30 mins using built-in normals, with provided test file. #jira UE-34125 Change 3380260 on 2017/04/04 by Nick.Darnell UMG - Fixing some OPTIONAL_BINDINGS that needed to be converted. Change 3380551 on 2017/04/05 by Andrew.Rodham Sequencer: Fixed ImplIndex sometimes not relating to the source data index when compiling at the track level #jira UE-43446 Change 3380555 on 2017/04/05 by Andrew.Rodham Sequencer: Automated unit tests for the segment and track compilers Change 3380647 on 2017/04/05 by Nick.Darnell UMG - Tweaking some stuff on the experimental rich textblock. Change 3380719 on 2017/04/05 by Yannick.Lange Fix 'Compile FortniteClient Mac' and 'Compile Ocean iOS' Failed with Material.cpp errors. Wrapping WITH_EDITOR around ParameterGroupData. #jira UE-43667 Change 3380765 on 2017/04/05 by Nick.Darnell UMG - Fixing a few more instances of OPTIONAL_BINDING. Change 3380786 on 2017/04/05 by Yannick.Lange Wrap SortPriority in GetParameterSortPriority with WITH_EDITOR. Change 3380872 on 2017/04/05 by Matt.Kuhlenschmidt PR #3453: UE-43004: YesNo MessageDialog instead of YesNoCancel (Contributed by projectgheist) Change 3381635 on 2017/04/05 by Matt.Kuhlenschmidt Expose static mesh material accessors to blueprints #jira UE-43631 Change 3381643 on 2017/04/05 by Matt.Kuhlenschmidt Added a way to enable or disable the component transform units display independently from unit display anywhere else. This is off by default Change 3381705 on 2017/04/05 by Yannick.Lange - Slate application multiple input pre-processors. - Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor. Change 3381959 on 2017/04/05 by Yannick.Lange Back out changelist 3381705. Old changelist. Change 3382049 on 2017/04/05 by Yannick.Lange - Slate application multiple input pre-processors in a wrapper class. - Remove ViewportWorldInteractionManager, let ViewportWorldInteraction handle it's own input pre-processor. - Deprecated SetInputPreProcessor, but made it work with RegisterInputPreProcessor and UnregisterInputPreProcessor. Change 3382450 on 2017/04/06 by Andrew.Rodham Sequencer: Fixed 'ambiguous' overloaded constructor for UT linux server builds Change 3382468 on 2017/04/06 by Yannick.Lange Rename AllowWorldMovement parameter to bAllow. Change 3382474 on 2017/04/06 by Yannick.Lange Make GetInteractors constant because we dont want it to be possible to change this arrray. Change 3382492 on 2017/04/06 by Yannick.Lange VR Editor: Floating UI's are stored in a map with FNames as key. Change 3382502 on 2017/04/06 by Yannick.Lange VR Editor: Use asset container for auto scaler sound. Change 3382589 on 2017/04/06 by Nick.Darnell Slate - Upgrading usages of SetInputPreprocessor. Also adjusting the API for the new preprocessor functions to have an option to remove all, which was what several usages expected. Also updated the deprecated version of SetInputPreprocessor to removeall if null is provided for the remove, mimicing the old functionality. Change 3382594 on 2017/04/06 by Nick.Darnell UMG - Deprecating GetMousePositionScaledByDPI, this function has too many issues, and I don't want to break buggy backwards compatability, so just going to deprecate it instead. For replacement, you can now access an FGeometry representing the viewport (after DPI scale has been added to the transform stack), and also the FGeometry for a Player's Screen widget host, which might be constrained for splitscreen, or camera aspect. Change 3382672 on 2017/04/06 by Nick.Darnell Build - Fixing incremental build. Change 3382674 on 2017/04/06 by Nick.Darnell Removing a hack added by launcher. Change 3382697 on 2017/04/06 by Matt.Kuhlenschmidt Fixed plugin browser auto-resizing when scrolling. Gave it a proper splitter Change 3382875 on 2017/04/06 by Michael.Trepka Modified FMacApplication::OnCursorLock() to avoid a thread safety problem with using TSharedPtr/Ref<FMacWindow> of the same window on main and game threads simultaneously. #jira FORT-34952 Change 3383303 on 2017/04/06 by Lauren.Ridge Adding sort priority to texture parameter code Change 3383561 on 2017/04/06 by Jamie.Dale Fixed MaximumIntegralDigits incorrectly including group separators in its count Change 3383570 on 2017/04/06 by Jamie.Dale Added regression tests for formatting a number with MaximumIntegralDigits and group separators enabled Change 3384507 on 2017/04/07 by Lauren.Ridge Mesh painting no longer paints on invisible components. Toggling visiblity refreshes the selected set. #jira UE-21172 Change 3384804 on 2017/04/07 by Joe.Graf Fixed a clang error on Linux due to missing virtual destructor when deleting through the interface pointer #CodeReview: marc.audy #rb: n/a Change 3385011 on 2017/04/07 by Matt.Kuhlenschmidt Fix dirtying levels just by copying actors if the level contains a foliage actor. The foliage system makes lazy asset pointers #jira UE-43750 Change 3385127 on 2017/04/07 by Lauren.Ridge Adding WITHEDITOR to OnDragDropCheckOverride Change 3385241 on 2017/04/07 by Jamie.Dale Removing warning if asking for a null or empty localization provider Change 3385442 on 2017/04/07 by Arciel.Rekman Fix a number of problems with Linux splash. - Thread safety (UE-40354). - Inconsistent font (UE-35000). - Change by Cengiz Terzibas. Change 3385708 on 2017/04/08 by Lauren.Ridge Resaving VREditor asset container with engine version Change 3385711 on 2017/04/08 by Arciel.Rekman Speculative fix for a non-unity Linux build. Change 3386120 on 2017/04/10 by Matt.Kuhlenschmidt Fix stats not being enabled when in simulate Change 3386289 on 2017/04/10 by Matt.Kuhlenschmidt PR #3466: Git plugin: add option to autoconfigure Git LFS (Contributed by SRombauts) Change 3386301 on 2017/04/10 by Matt.Kuhlenschmidt PR #3470: Git Plugin: disable "Keep Files Checked Out" checkbox on Submit to Source Control Window (Contributed by SRombauts) Change 3386381 on 2017/04/10 by Michael.Trepka PR #3461: Mac doesn't return the correct exit code (Contributed by projectgheist) Change 3388223 on 2017/04/11 by matt.kuhlenschmidt Deleted collection: MattKTest Change 3388808 on 2017/04/11 by Lauren.Ridge Reset arrows now only display for non-default values in the Material Instance editor. Reset to default arrows now are placed in the correct location for SObjectPropertyEntryBox and SPropertyEditorAsset. SResetToDefaultPropertyEditor now takes a property handle in the constructor, instead of an FPropertyEditor. #jira UE-20882 Change 3388843 on 2017/04/11 by Lauren.Ridge Forward declaring custom reset override. Fix for incremental build error Change 3388950 on 2017/04/11 by Nick.Darnell PR #3450: UMG "Lock" Feature (Contributed by GBX-ABair). Epic Edit: Made some changes to make it work with named slots, added an option not to always recursively itterate the children, also removed the dependency on SWidget changes. Change 3388996 on 2017/04/11 by Matt.Kuhlenschmidt Removed crashtracker Change 3389004 on 2017/04/11 by Lauren.Ridge Fix for automated test error - additional safety check for if the reset button has been successfully created. Change 3389056 on 2017/04/11 by Matt.Kuhlenschmidt Removed editor live streaming Change 3389077 on 2017/04/11 by Jamie.Dale Removing QAGame config change Change 3389078 on 2017/04/11 by Nick.Darnell Fortnite - Fixing an input preprocessor warning. Change 3389136 on 2017/04/11 by Nick.Darnell Slate - Removing deprecated 'aspect ratio' locking box cells, never really worked, deprecated a long time ago. Change 3389147 on 2017/04/11 by Nick.Darnell UMG - Fixing a critical error with the alignment of the lock icon. #jira UE-43881 Change 3389401 on 2017/04/11 by Nick.Darnell UMG - Adds a designer option to control respecting the locked mode. Change 3389638 on 2017/04/11 by Nick.Darnell UMG - Adding the Widget Reflector button to the widget designer. Change 3389639 on 2017/04/11 by Nick.Darnell UMG - Tweaking the respect lock icon. Change 3390032 on 2017/04/12 by JeanMichel.Dignard Fixed project generation when using subfolders in Target.SolutionDirectory (ie: SolutionDirectory = "Programs\MyProgram") Change 3390033 on 2017/04/12 by Matt.Kuhlenschmidt PR #3472: Exposed Distributions to Game Projects and Plugins (Contributed by StormtideGames) Change 3390041 on 2017/04/12 by Matt.Kuhlenschmidt PR #3446: Add missing TryLock to PThreadCriticalSection and add RAII helper for try locking. (Contributed by Laurie-Hedge) Change 3390196 on 2017/04/12 by Lauren.Ridge Fix for crash on opening assets without reset to default button enable Change 3390414 on 2017/04/12 by Matt.Kuhlenschmidt PR #3300: UE-5528: Added check for empty startup tutorial path (Contributed by projectgheist) #jira UE-5528 Change 3390427 on 2017/04/12 by Jamie.Dale Fixed not being able to set pure whitespace values on FText properties #jira UE-42007 Change 3390712 on 2017/04/12 by Jamie.Dale Content Browser search now takes the display names of properties into account #jira UE-39564 Change 3390897 on 2017/04/12 by Nick.Darnell Slate - Changing the order that the tabs draw in so that the draw front to back, instead of back to front. Change 3390900 on 2017/04/12 by Nick.Darnell Making a Cast CastChecked in UScaleBox. Change 3390907 on 2017/04/12 by Nick.Darnell UMG - Adding GetMousePositionOnPlatform and GetMousePositionOnViewport as other replacements that people can use rather than GetMousePositionScaledByDPI. Change 3390934 on 2017/04/12 by Cody.Albert Fix to set correct draw layer in FSlateElementBatcher::AddElements Change 3390966 on 2017/04/12 by Nick.Darnell Input - Force inline some core input functions. Change 3391207 on 2017/04/12 by Jamie.Dale Fixed moving a folder containing a level not moving the level Also removed some redundant usage of ContentBrowserUtils::GetUnloadedAssets #jira UE-42091 Change 3391327 on 2017/04/12 by Mike.Fricker Removed Twitch support and GameLiveStreaming Change 3391405 on 2017/04/12 by Mike.Fricker Removed Twitch support and GameLiveStreaming (part 2) Change 3391407 on 2017/04/12 by Mike.Fricker Removed some remaining EditorLiveStreaming and CrashTracker code Change 3392296 on 2017/04/13 by Yannick.Lange VR Editor: New assets in asset containers for gizmo rotation. Change 3392332 on 2017/04/13 by Nick.Darnell Slate - Removing delegate hooks from the safezone and scalebox widget when the widgets are cleaned up. Change 3392349 on 2017/04/13 by Cody.Albert Corrected typo Change 3392688 on 2017/04/13 by Yannick.Lange VR Editor: Resaved asset containers Change 3392905 on 2017/04/13 by Jamie.Dale Fixed FPaths::ChangeExtension and FPaths::SetExtension stomping over the path part of a filename if the name part of the had no extension but the path contained a dot, eg) C:/First.Last/file Change 3393514 on 2017/04/13 by Yannick.Lange VR Editor: Temp direct interaction pointer. Change 3393930 on 2017/04/14 by Yannick.Lange VR Editor: Remove unused transform gizmo Change 3394084 on 2017/04/14 by Max.Chen Audio Capture: No longer beta Change 3394499 on 2017/04/14 by Cody.Albert Updated UMovieSceneSpawnTrack::PostLoad to call ConditionalPostLoad on bool track before converting it to a spawn track #rnx Change 3395703 on 2017/04/17 by Yannick.Lange Duplicate from Release-4.16 CL 3394172 Viewport Interaction: Fix disable animation when aiming for gizmo stretch handles. #jira UE-43964 Change 3395794 on 2017/04/17 by Mike.Fricker #rn Fixed FastXML not loading XML files with attributes delimited by single quote characters Change 3395945 on 2017/04/17 by Yannick.Lange VR Editor: Swap end and start of laser, because they start of laser was using end mesh. Change 3396253 on 2017/04/17 by Michael.Dupuis #jiraUE-43693: While moving foliage instance between levels, UI count was'nt updating properly Moved MoveSelectedFoliageToLevel to EdModeFoliage as we required more treatment than was done in LevelCollectionModel Ask to save foliage type as asset while moving between level foliage instances containing local foliage type Change 3396291 on 2017/04/17 by Michael.Dupuis #jira UE-35029: Added a cache for mesh bounds so if the bounds changed we can rebuild the occlusion tree Added possibility to register on bounds changed of a static mesh in editor mode Rebuild the occlusion tree if the mesh bounds changed Rebuild the occlusion tree if we change the mesh associated with a foliage type Optimize some operation to not Rebuild the occlusion tree for every instance added/remove instead it's done at the end of the operation Change 3396293 on 2017/04/17 by Michael.Dupuis #jira UE-40685: Improve Collision With World algo, to support painting pitch rotated instance or not on a flat terrain or slope respecting the specified ground angles Change 3397660 on 2017/04/18 by Matt.Kuhlenschmidt PR #3480: Git plugin: improve/cleanup init and settings (Contributed by SRombauts) Change 3397675 on 2017/04/18 by Alex.Delesky #jira UE-42383 - Adds a delegate to the placement mode module to allow users to register custom categories and listen to when they should be refreshed. Change 3397818 on 2017/04/18 by Yannick.Lange ViewportInteraction and VR Editor: - Replace GENERATED_UCLASS_BODY with GENERATED_BODY. - Remove destructors for uobjects. Change 3397832 on 2017/04/18 by Yannick.Lange VR Editor: Remove unused vreditorbuttoon Change 3397884 on 2017/04/18 by Yannick.Lange VREditor: Addition to 3397832, remove unused vreditorbuttoon. Change 3397985 on 2017/04/18 by Michael.Trepka Another attempt to solve the issue with dsymutil failing with an error saying the input file did not exist. We now check for the input file's existence in a loop 30 times (once a second) before trying to call dsymutil. Also, added a FixDylibDependencies as a prerequisite for dSYM generation. #jira UE-43900 Change 3398030 on 2017/04/18 by Jamie.Dale Fixed outline changes not automatically updating the text layout used by a text block #jira UE-42116 Change 3398039 on 2017/04/18 by Jamie.Dale Unified asset drag-and-drop FAssetDragDropOp now handles both assets and asset paths, and FAssetPathDragDropOp has been removed. This allows assets and folders to be drag-dropped at the same time in the Content Browser. #jira UE-39208 Change 3398074 on 2017/04/18 by Michael.Dupuis Fixed crash in cooking fortnite Change 3398351 on 2017/04/18 by Alex.Delesky Fixing PlacementMode module build error Change 3398513 on 2017/04/18 by Yannick.Lange VR Editor: - Remove unused previousvreditor member. - Removing extensions when exiting vr mode without having to find the extensions. Change 3398540 on 2017/04/18 by Alex.Delesky Removing a private PlacementMode header that was included in a public one. Change 3399434 on 2017/04/19 by Matt.Kuhlenschmidt Remove uncessary files from p4 Change 3400657 on 2017/04/19 by Jamie.Dale Fixed potential underflow when using negative digit ranges with FastDecimalFormat Change 3400722 on 2017/04/19 by Jamie.Dale Removed some check's that could trip with malformed data Change 3401811 on 2017/04/20 by Jamie.Dale Improved the display of asset tags in the Content Browser - Numeric tags are now displayed pretty printed. - Numeric tags can now be displayed as a memory value (the numeric value should be in bytes). - Dimensional tags are now split and each part pretty printed. - Date/Time tags are now stored as a timestamp (which has the side effect of sorting correctly) and displayed as a localized date/time. - The column view now shows the same display values as the tooltips do. - The tooltip now uses the tag meta-data display name (if set). - The tag meta-data display name can now be used as an alias in the Content Browser search. #jira UE-34090 Change 3401868 on 2017/04/20 by Cody.Albert Add screenshot save directory parameter to editor and project settings #rn Added options to the settings menu to specify screenshot save directory Change 3402107 on 2017/04/20 by Jamie.Dale Cleaned up the "View Options" menu in the Content Browser Re-organized some of the settings into better groups, and fixed some places where items would still be shown in the asset view when some of these content filter options were disabled (either via a setting, or via the UI). Change 3402283 on 2017/04/20 by Jamie.Dale Creating a folder in the Content Browser now creates the folder on disk, and cancelling a folder naming now removes the temporary folder #jira UE-8892 Change 3402572 on 2017/04/20 by Alex.Delesky #jira UE-42421 PR #3311: Improved log messages (Contributed by projectgheist) Change 3403226 on 2017/04/21 by Yannick.Lange VR Editor: - Removed previous quick menu floating UI panel. - Added the concept of a info display floating UI panel. - Used info display for showing sequencer timer. Change 3403277 on 2017/04/21 by Yannick.Lange VR Editor: - Set window mesh for info display panel. - Add option to null out widget when hidden. Change 3403289 on 2017/04/21 by Yannick.Lange VR Editor: Don't load VREditorAssetContainer asset when starting editor. Change 3403353 on 2017/04/21 by Yannick.Lange VR Editor: Fix variable 'RelativeOffset' is uninitialized when used within its own initialization. Change 3404183 on 2017/04/21 by Matt.Kuhlenschmidt Fix typo Change 3405378 on 2017/04/24 by Alex.Delesky #jira UE-42550 - Audio thumbnails should never rerender now, even with real-time thumbnails enabled Change 3405382 on 2017/04/24 by Alex.Delesky #jira UE-42097 - The Main Frame window will no longer steadily grow if it's closed while not maximized Change 3405384 on 2017/04/24 by Alex.Delesky #jira UE-43985 - Duplicating Force Feedback, Sound Wave, or Sound Cue assets from the context menu after right-clicking on the playback controls will now correctly select the newly created asset for rename. Change 3405386 on 2017/04/24 by Alex.Delesky #jire UE-42239 - Blueprints that have been duplicated from another blueprint will now render their thumbnails correctly instead of displaying a flat black thumbnail. Change 3405388 on 2017/04/24 by Alex.Delesky #jira UE-43241 - Blueprint classes that derive from notplaceable classes (such as SpectatorPawn and GameMode) can no longer be placed within the level editor via the right-click Add/Replace menus Change 3405394 on 2017/04/24 by Alex.Delesky #jira UE-42137 - Users can no longer access the widget object of a Widget Component from within actor construction scripts Change 3405429 on 2017/04/24 by Alex.Delesky Fixing a naming issue for CL 3405378 Change 3405579 on 2017/04/24 by Cody.Albert Fixed bad include from CL#1401868 #jira UE-44238 Change 3406716 on 2017/04/24 by Max.Chen Sequencer: Add attach/detach rules for attach section. #jira UE-40970 Change 3406718 on 2017/04/24 by Max.Chen Sequencer: Set component velocity for attached objects #jira UE-36337 Change 3406721 on 2017/04/24 by Max.Chen Sequencer: Re-evaluate on stop. This fixes a situation where if you set the playback position to the end of a sequence while it's playing, the sequence will stop playing but won't re-evaluate to the end of the sequence. #jira UE-43966 Change 3406726 on 2017/04/24 by Max.Chen Sequencer: Added StopAndGoToEnd() function to player #jira UE-43967 Change 3406727 on 2017/04/24 by Max.Chen Sequencer: Add cinematic options to level sequence player #jira UE-39388 Change 3407097 on 2017/04/25 by Yannick.Lange VR Editor: Temp asset for free rotation handle gizmo. Change 3407123 on 2017/04/25 by Michael.Dupuis #jira UE-44329: Only display the message in attended mode and editor (so user can actually perform the save) Change 3407135 on 2017/04/25 by Max.Chen Sequencer: Load level sequence asynchronously. #jira UE-43807 Change 3407137 on 2017/04/25 by Shaun.Kime Fixing comments to refer to correct function name. Change 3407138 on 2017/04/25 by Max.Chen Sequencer: Mark actor that the spawnable duplicates as a transient so that the level isn't dirtied. Then clear the transient flag on the object template. #jira UE-30007 Change 3407139 on 2017/04/25 by Max.Chen Sequencer: Fix active marker in sub, cinematic, control rig sections. #jira UE-44235 Change 3407229 on 2017/04/25 by Max.Chen Sequencer: Prioritize buttons over label. #jira UE-26813 Change 3407343 on 2017/04/25 by Matt.Kuhlenschmidt Added a world accessor to blutilties so they can operate on the editor world (spawn,destroy actors etc) Change 3407401 on 2017/04/25 by Nick.Darnell Slate - Adding a Round function to SlateRect. Also adding a way to convert a Transform2D to a full matrix. Change 3407842 on 2017/04/25 by Matt.Kuhlenschmidt Made AssetTools a uobject interface so it could be access from script. A few methods were deprecated and renamed to enforce a consistent UI. Now all asset tools methods that expose a dialog have "WithDialog" in their name to differentiate them from methods that do not open dialogs and could be used by scripts for automation. C++ users may still access IAssetTools but should not ever need to use the UAssetTools interface class Change 3407890 on 2017/04/25 by Matt.Kuhlenschmidt Removed temp method Change 3408084 on 2017/04/25 by Matt.Kuhlenschmidt Exposed source control helpers to script Change 3408163 on 2017/04/25 by Matt.Kuhlenschmidt Deprecated actor grouping methods on UUnrealEdEngine and moved their functionality into their own class( UActorGroupingUtils). There is a new editor config setting to set which grouping utils class is used and defaults to the base class. The new utility methods are exposed to script. Change 3408220 on 2017/04/25 by Alex.Delesky #jira UE-43387 - The Levels window will now support the organization of streaming levels using editor-only folders. Change 3408239 on 2017/04/25 by Matt.Kuhlenschmidt Added a file helpers API to script. This one is a wrapper around FEditorFileUtils for now to work around some issues exposing legacy methods to script but FEditorFileUtils will be deprecated soon Change 3408314 on 2017/04/25 by Jamie.Dale Fixed typo Change 3408911 on 2017/04/25 by Max.Chen Level Editor: Delegate for when viewport tab content changes. #jira UE-37805 Change 3408912 on 2017/04/25 by Max.Chen Sequencer: Transport controls are added when viewport content changes and only to viewports that support it (ie. cinematic viewport doesn't allow it since it has its own transport controls). This fixes issues where transport controls wouldn't be visible in newly created viewports and also would get disabled when switching from default to cinematic and back to default. #jira UE-37805 Change 3409073 on 2017/04/26 by Yannick.Lange VR Editor: Fix starting point of lasers. Change 3409330 on 2017/04/26 by Matt.Kuhlenschmidt Fix CIS Change 3409497 on 2017/04/26 by Alexis.Matte Fix crash importing animation with skeleton that do not match the fbx skeleton. #jira UE-43865 Change 3409530 on 2017/04/26 by Michael.Dupuis #jira UE-44329: Only display the log if we're not running a commandlet Change 3409559 on 2017/04/26 by Alex.Delesky #jira none - Fixing case of header include for CL 3408220 Change 3409577 on 2017/04/26 by Yannick.Lange VR Editor: being able to push/pull along the laser using touchpad or analog stick when transforming object towards laser impact. Change 3409614 on 2017/04/26 by Max.Chen Sequencer: Add Scrub() to movie scene player. Change 3409658 on 2017/04/26 by Jamie.Dale Made the handling of null item selection consistent in SComboBox If the selection was initially null and the combo was closed, it would previously pass through the null entry to its child SListView, which would then always think the selection was changing when the combo was opened and cause it to immediately close again. Change 3409659 on 2017/04/26 by Jamie.Dale Added preset Unicode block range selection to the font editor UI #jira UE-44312 Change 3409755 on 2017/04/26 by Max.Chen Sequencer: Back out bIsUISound for scrubbing. Change 3410015 on 2017/04/26 by Max.Chen Sequencer: Fix crash on asynchronous level sequence player load. #jira UE-43807 Change 3410094 on 2017/04/26 by Max.Chen Slate: Enter edit mode and return handled if not read only. Change 3410151 on 2017/04/26 by Michael.Trepka Fix for building EngineTest project on Mac Change 3410930 on 2017/04/27 by Matt.Kuhlenschmidt Expose editor visibility methods on Actor to blueprint/script Change 3411164 on 2017/04/27 by Matt.Kuhlenschmidt Fix crash when repeatedly spaming ctrl+s and ctrl+shift+s to save. PR #3511: UE-44098: Replace check with if-statement (Contributed by projectgheist) Change 3411187 on 2017/04/27 by Jamie.Dale No longer attempt to use the game culture override in the editor Change 3411443 on 2017/04/27 by Alex.Delesky #jira UE-43730, UE-43703 - Material Instances will now correctly use their preview meshes when being edited, or will use their parent's preview mesh if their preview mesh has not been set and the parent's is valid. Change 3411809 on 2017/04/27 by Max.Chen Sequencer: Prioritize buttons over label. #jira UE-26813 Change 3411810 on 2017/04/27 by Cody.Albert Scrollbox now properly calls Invalidate while scrolling Change 3411892 on 2017/04/27 by Alex.Delesky #jira UE-40031 PR #3065: Ignore .vs folder when initializing git projects (Contributed by mattiascibien) Change 3412002 on 2017/04/27 by Jamie.Dale Fixed crash when using an invalid regex pattern #jira UE-44340 Change 3412009 on 2017/04/27 by Cody.Albert Fixed Invalidation Panel to apply scale only to volatile elements, correcting an issue with Cache Relative Positions Change 3412631 on 2017/04/27 by Jamie.Dale Implemented support for hiding empty folders in the Content Browser "Empty" in this case is defined as folders that recursively don't contain assets or classes. Folders that have been created by the user or have at any point contained content during the current editing session are always shown. This also fixes some places where the content filters would miss certain folders (usually due to missing checks when processing AssetRegistry events), and allows asset and path views to be synced to folder selections (as well as asset selections), which improves the experience when renaming folders, and navigating the Content Browser history. #jira UE-40038 Change 3413023 on 2017/04/27 by Max.Chen Sequencer: Fix filtering so that it includes parent nodes only and doesn't recurse through to add their children. Change 3413309 on 2017/04/28 by Jamie.Dale Fixed shadow warning Change 3413327 on 2017/04/28 by Jamie.Dale Added code to sanitize some known strings before passing them to ICU Change 3413486 on 2017/04/28 by Matt.Kuhlenschmidt Allow AssetRenameData to be exposed to blueprints/script Change 3413630 on 2017/04/28 by Jamie.Dale Moved FUnicodeBlockRange into Slate so that it can be used for C++ defined fonts as well as those defined in the font editor Change 3414164 on 2017/04/28 by Jamie.Dale Removing some type-unsafe placement new array additions Change 3414497 on 2017/04/28 by Yannick.Lange ViewportInteraction: - Add arcball sphere asset. - Add opacity parameter to translucent gizmo material. Change 3415021 on 2017/04/28 by Max.Chen Sequencer: Remove spacer nodes at the top and bottom of the node tree. This fixes the artifact of having spaces at the top and bottom which get selected when you click on the space and when you press Home and End to go to the top or bottom of the tree. #jira UE-28931 Change 3415786 on 2017/05/01 by Matt.Kuhlenschmidt #rn PR #3518: Allow PaintedVertices to be sized down (Contributed by jasoncalvert) Change 3415836 on 2017/05/01 by Alex.Delesky #jira UE-39203 - You can now summon the reference viewer from the content browser using the keyboard shortcut. Change 3415837 on 2017/05/01 by Alex.Delesky #jira UE-34947 - When the user attempts to download an IDE from within the editor (due to needing one to add a C++ class), the window that hosts the widget will now close if it's a modal window. Change 3415839 on 2017/05/01 by Alex.Delesky #jira UE-42049 PR #3266: Profiler: added Thread filter (Contributed by StefanoProsperi) Change 3415842 on 2017/05/01 by Michael.Dupuis #jira UE-44514 : Removed the warning as it's causing more issue than it fixes. Change 3416511 on 2017/05/01 by Matt.Kuhlenschmidt Make UHT generate WITH_EDITOR guards around UFunctions generated in a WITH_EDITOR C++ block. This prevents these functions from being generated in non-editor builds Change 3416520 on 2017/05/01 by Yannick.Lange Viewport Interaction: - Toggle ViewportWorldInteraction with command for desktop testing without having to use VREditor. - Add helper function to add a unique extension by subclass. Change 3416956 on 2017/05/01 by Matt.Kuhlenschmidt Exposed EditorLevelUtils to script. This allows creation of streaming levels, setting the current level and moving actors between levels Change 3416964 on 2017/05/01 by Matt.Kuhlenschmidt Prevent foliage from marking actors dirty as HISM components are added and removed from the scene. Change 3416988 on 2017/05/01 by Lauren.Ridge PR #3122: UE-40262: Color tabs according to asset type (Contributed by projectgheist) Changed the highlight style to be around the icon and match the content browser color and style. #jira UE-40437 Change 3418014 on 2017/05/02 by Yannick.Lange Viewport Interaction: Remove material members from base transform gizmo and use asset container to get materials. Change 3418087 on 2017/05/02 by Lauren.Ridge Adding minor tab icon surrounds Change 3418602 on 2017/05/02 by Jamie.Dale Fixed a crash that could occur due to bad data in the asset registry It was possible for FAssetRegistry::PrioritizeSearchPath to re-order the BackgroundAssetResults in response to callback from FAssetRegistry::AssetSearchDataGathered, which caused integrity issues with the array, and would lead to results being missed, or an existing result being processed twice (which due to certain assumptions would result in it being deleted, and bad data being left in the asset registry). These results lists now use a custom type that prevents the mutation of items that have already been processed but not yet trimmed. Change 3418702 on 2017/05/02 by Matt.Kuhlenschmidt Fix USD files that reference other USD files not finding the referenced files by relative path. Requires USD third party changes only Change 3419071 on 2017/05/02 by Arciel.Rekman UBT: optimize FixDeps step on Linux. - Removes the need to re-link unrelated engine libraries when recompiling a code project. - Makes builds faster on machines with multiple cores. - The module that has circularly referenced dependencies is considered cross-referenced itself. - Tested compilation on Linux (native & cross) and Mac (native). Change 3419240 on 2017/05/02 by Cody.Albert Bound widgets in animation tracks can no longer be swapped with widgets from a different widget blueprint, which would lead to a crash Change 3420011 on 2017/05/02 by Max.Chen Sequencer: Fix scrubber hit testing so that the time scrubber is really favored over the playback ranges. #jira UE-44569 Change 3420507 on 2017/05/03 by Lauren.Ridge Selecting a camera or other preview actor in VR Mode now creates a floating in-world viewport. Also deselect all Actors when moving into and out of VR Mode Change 3420643 on 2017/05/03 by andrew.porter QAGame - Adding test content to QA-Sequencer for using spawnables with override bindings Change 3420678 on 2017/05/03 by andrew.porter QAGame: Updating override binding sequence Change 3420961 on 2017/05/03 by Jamie.Dale Exposed some missing Internationalization functions to BPs Change 3422767 on 2017/05/04 by Yannick.Lange ViewportInteraction: Extensibility for dragging on gizmo handles Removed ETransformGizmoInteractionType completely and replaced it with UViewportDragOperation. Using the ETransformGizmoInteractionType enum made external extensibility impossible. Now every gizmo handle group has a component called UViewportDragOperationComponent which holds a UViewportDragOperation of a certain type. This UViewportDragOperation can be inherited to create a custom method to calculate a new transform for the objects when dragging the gizmo handle. Change 3422789 on 2017/05/04 by Yannick.Lange ViewportInteraction: Fix duplicate console variable. Change 3422817 on 2017/05/04 by Andrew.Rodham Sequencer: Changed level sequence object references to always use a package and object path based lookup - Newly created binding references now consist of a package name and an inner object path for actors, and just an inner object path for components. The package name is fixed up dynamically for PIE, which means it can work correctly for multiplayer PIE, and when levels are streamed in during PIE (functionality previously unavailable to lazy object ptrs) - Added a way of rebinding all possessable objects in the current sequence (Rebind Possessable References) - Level sequence binding references no longer use native serialization now that TMap serialization is fully supported. - Multiple bindings are now supported in the API layer of level sequence references, although this is not yet exposed to the sequencer UI. #jira UE-44490 Change 3422826 on 2017/05/04 by Andrew.Rodham Removed erroneous braces Change 3422874 on 2017/05/04 by James.Golding Adding MaterialEditingLibrary to allow manipulation of materials within the editor. - Refactored code out of MaterialEditor where possible Marked some material types as BP-accessible, to allow to editor-Blueprint access. Remove unused 'bSkipPrim' property from Set/CheckMaterialUsage Change 3422942 on 2017/05/04 by Lauren.Ridge Tab padding adjustment to allow tabs with icons to be the same height as tabs without Change 3423090 on 2017/05/04 by Jamie.Dale Added a way to get the source package path for a localized package path Added tests for the localized package path checks. Change 3423133 on 2017/05/04 by Jamie.Dale Fixed a bug where a trailing quote without a newline at the end of a CSV file would be added to the parsed text rather than converted to a terminator Change 3423301 on 2017/05/04 by Max.Chen Sequencer: Add JumpToPosition which updates to a position in a scrubbing state. Change 3423344 on 2017/05/04 by Jamie.Dale Updated localized asset group caching so that it works in non-cooked builds Change 3423486 on 2017/05/04 by Lauren.Ridge Fixing deselection code in VWI Change 3423502 on 2017/05/04 by Jamie.Dale Adding automated localization tests Change 3424219 on 2017/05/04 by Yannick.Lange - Hide FWidget when ViewportWorldInteraction starts. - Added option to EditorViewportClient to not render FWidget without using FWidget::SetDefaultVisibility. Change 3425116 on 2017/05/05 by Matt.Kuhlenschmidt PR #3527: Modified comments (Contributed by projectgheist) Change 3425239 on 2017/05/05 by Matt.Kuhlenschmidt Fix shutdown crash in projects that unregister asset tools in UObjects being destroyed at shutdown. Change 3425241 on 2017/05/05 by Max.Chen Sequencer: Components aren't deselected from the sequencer tree view when they get deselected in the viewport/outliner. #jira UE-44559 Change 3425286 on 2017/05/05 by Jamie.Dale Text duplicated as part of a widget archetype now maintains its existing key #jira UE-44715 Change 3425477 on 2017/05/05 by Andrew.Rodham Sequencer: Do not deprecate legacy object references since they still need to be serialized on save - Also re-add identical via equality operator so that serialization works again Change 3425681 on 2017/05/05 by Jamie.Dale Fixed fallback font height/baseline measuring Change 3426137 on 2017/05/05 by Jamie.Dale Removing PPF_Localized It's an old UE3-ism that's no longer tested anywhere Change 3427434 on 2017/05/07 by Yannick.Lange ViewportInteraction: Null check for viewport. Change 3427905 on 2017/05/08 by Matt.Kuhlenschmidt Removed the concept of a global selection annotation. This poses a major problem when more than one selection set is clearing it. If more than one selection set is in a transaction the last one to be serialized will clear and rebuild the annotation thus causing out of sync issues with component and actor selection sets. This change introduces the concept of a per-selection set annotation to avoid being out of sync. Actor and ActorComponent now override IsSelected (editor only) to make use of these selections. #jira UE-44655 Change 3428738 on 2017/05/08 by Matt.Kuhlenschmidt Fix other usage of USelection not having a selection annotation #jira UE-44786 Change 3429562 on 2017/05/08 by Matt.Kuhlenschmidt Fix crash on platforms without a cursor #jira UE-44815 Change 3429862 on 2017/05/08 by tim.gautier QAGame: Enable Include CrashReporter in Project Settings Change 3430385 on 2017/05/09 by Lauren.Ridge Resetting user focus to game viewport after movie finishes playback #jira UE-44785 Change 3430695 on 2017/05/09 by Lauren.Ridge Fix for crash on leaving in the middle of a loading movie #jira UE-44834 Change 3431234 on 2017/05/09 by Matt.Kuhlenschmidt Fixed movie player setting all users to focus which breaks VR controllers [CL 3432852 by Matt Kuhlenschmidt in Main branch]
2017-05-10 11:49:32 -04:00
bool SSourceControlSubmitWidget::CanCheckOut() const
{
const ISourceControlProvider& SourceControlProvider = ISourceControlModule::Get().GetProvider();
return SourceControlProvider.UsesCheckout();
}
TSharedRef<ITableRow> SSourceControlSubmitWidget::OnGenerateRowForList(TSharedPtr<FSubmitItem> SubmitItem, const TSharedRef<STableViewBase>& OwnerTable)
{
TSharedRef<ITableRow> Row =
SNew(SSourceControlSubmitListRow, OwnerTable)
.SourceControlSubmitWidget(SharedThis(this))
.Item(SubmitItem)
.IsEnabled(SubmitItem->IsEnabled());
return Row;
}
EColumnSortMode::Type SSourceControlSubmitWidget::GetColumnSortMode(const FName ColumnId) const
{
if (SortByColumn != ColumnId)
{
return EColumnSortMode::None;
}
return SortMode;
}
void SSourceControlSubmitWidget::OnColumnSortModeChanged(const EColumnSortPriority::Type SortPriority, const FName& ColumnId, const EColumnSortMode::Type InSortMode)
{
SortByColumn = ColumnId;
SortMode = InSortMode;
RequestSort();
}
void SSourceControlSubmitWidget::RequestSort()
{
// Sort the list of root items
SortTree();
ListView->RequestListRefresh();
}
void SSourceControlSubmitWidget::SortTree()
{
if (SortByColumn == SSourceControlSubmitWidgetDefs::ColumnID_FileLabel)
{
if (SortMode == EColumnSortMode::Ascending)
{
ListViewItems.Sort([](const TSharedPtr<FSubmitItem>& A, const TSharedPtr<FSubmitItem>& B) {
return A->GetDisplayName().ToString() < B->GetDisplayName().ToString(); });
}
else if (SortMode == EColumnSortMode::Descending)
{
ListViewItems.Sort([](const TSharedPtr<FSubmitItem>& A, const TSharedPtr<FSubmitItem>& B) {
return A->GetDisplayName().ToString() >= B->GetDisplayName().ToString(); });
}
}
else if (SortByColumn == SSourceControlSubmitWidgetDefs::ColumnID_IconLabel)
{
if (SortMode == EColumnSortMode::Ascending)
{
ListViewItems.Sort([](const TSharedPtr<FSubmitItem>& A, const TSharedPtr<FSubmitItem>& B) {
return A->GetIconName().ToString() < B->GetIconName().ToString(); });
}
else if (SortMode == EColumnSortMode::Descending)
{
ListViewItems.Sort([](const TSharedPtr<FSubmitItem>& A, const TSharedPtr<FSubmitItem>& B) {
return A->GetIconName().ToString() >= B->GetIconName().ToString(); });
}
}
}
#undef LOCTEXT_NAMESPACE
#endif // SOURCE_CONTROL_WITH_SLATE