Ensure will trigger when undo reverts text to default value.
"This triggers an ensure because the undo ends up calling SKismetInspector::ShowDetailsForObjects(), which forces the keyboard focus to get cleared on the text editor widget, causing it to attempt to submit the current value while it is in the middle of applying the undo transaction."
Potential fix: (Licensee would like to know if this is best way to prevent this)
if (* !GIsTransacting &&* FSlateApplication::Get().HasFocusedDescendants(AsShared()) )
{
FSlateApplication::Get().ClearKeyboardFocus(EFocusCause::Mouse);
}
Confirmed in Main (4.22) CL 4404204
1. Create a new blueprint
2. Add a Text variable (also tested with Name and Interger)
3. Compile the blueprint so you can change the default value.
4. Change the default value to anything other than None and hit Enter to submit the change.
5. Press Ctrl+Z to undo the change without doing anything
Result: ensure will hit: Ensure condition failed: !GIsTransacting
Ensure condition failed: !GIsTransacting [File:D:\Build\++UE4+Release-4.19+Compile\Sync\Engine\Source\Editor\UnrealEd\Classes\Editor/TransBuffer.h] [Line: 72] UE4Editor-Core.dll!FWindowsPlatformStackWalk::StackWalkAndDump() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\private\windows\windowsplatformstackwalk.cpp:234] UE4Editor-Core.dll!FDebug::EnsureFailed() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:299] UE4Editor-Core.dll!FDebug::OptionallyLogFormattedEnsureMessageReturningFalse() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:430] UE4Editor-UnrealEd.dll!UTransBuffer::BeginInternal<FTransaction>() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\unrealed\classes\editor\transbuffer.h:72] UE4Editor-UnrealEd.dll!UEditorEngine::BeginTransaction() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\unrealed\private\editorserver.cpp:1091] UE4Editor-PropertyEditor.dll!FPropertyValueImpl::ImportText() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\propertyeditor\private\propertyhandleimpl.cpp:507] UE4Editor-PropertyEditor.dll!<lambda_6601be400562b511ff01219c84317293>::operator()() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\propertyeditor\private\propertyhandleimpl.cpp:2864] UE4Editor-PropertyEditor.dll!FPropertyValueImpl::EnumerateObjectsToModify() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\propertyeditor\private\propertyhandleimpl.cpp:55] UE4Editor-PropertyEditor.dll!FPropertyHandleBase::SetPerObjectValue() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\propertyeditor\private\propertyhandleimpl.cpp:2852] UE4Editor-DetailCustomizations.dll!`anonymous namespace'::FEditableTextPropertyHandle::SetText() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\detailcustomizations\private\textcustomization.cpp:82] UE4Editor-EditorWidgets.dll!STextPropertyEditableTextBox::OnTextCommitted() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\editorwidgets\private\stextpropertyeditabletextbox.cpp:955] UE4Editor-EditorWidgets.dll!TBaseSPMethodDelegateInstance<0,STextPropertyEditableTextBox,0,TTypeWrapper<void> __cdecl(FText const & __ptr64,enum ETextCommit::Type)>::Execute() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:269] UE4Editor-EditorWidgets.dll!TBaseSPMethodDelegateInstance<0,STextPropertyEditableTextBox,0,void __cdecl(FText const & __ptr64,enum ETextCommit::Type)>::ExecuteIfSafe() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:345] UE4Editor-Slate.dll!FSlateEditableTextLayout::HandleFocusLost() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\widgets\text\slateeditabletextlayout.cpp:783] UE4Editor-Slate.dll!FSlateApplication::SetUserFocus() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:2893] UE4Editor-Slate.dll!FSlateApplication::ClearKeyboardFocus() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:2654] UE4Editor-Kismet.dll!SKismetInspector::ShowDetailsForObjects() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\kismet\private\skismetinspector.cpp:461] UE4Editor-Kismet.dll!SMyBlueprint::OnActionSelectedHelper() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\kismet\private\smyblueprint.cpp:1645] UE4Editor-Kismet.dll!SMyBlueprint::OnActionSelected() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\kismet\private\smyblueprint.cpp:1565] UE4Editor-Kismet.dll!TBaseSPMethodDelegateInstance<0,SMyBlueprint,0,TTypeWrapper<void> __cdecl(TArray<TSharedPtr<FEdGraphSchemaAction,0>,FDefaultAllocator> const & __ptr64,enum ESelectInfo::Type)>::Execute() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:269] UE4Editor-GraphEditor.dll!SGraphActionMenu::HandleSelection() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\grapheditor\private\sgraphactionmenu.cpp:1355] UE4Editor-GraphEditor.dll!SGraphActionMenu::OnItemSelected() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\grapheditor\private\sgraphactionmenu.cpp:1182] UE4Editor-GraphEditor.dll!TBaseSPMethodDelegateInstance<0,SGraphActionMenu,0,TTypeWrapper<void> __cdecl(TSharedPtr<FGraphActionNode,0>,enum ESelectInfo::Type)>::Execute() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:269] UE4Editor-GraphEditor.dll!TBaseSPMethodDelegateInstance<0,SGraphActionMenu,0,void __cdecl(TSharedPtr<FGraphActionNode,0>,enum ESelectInfo::Type)>::ExecuteIfSafe() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:345] UE4Editor-GraphEditor.dll!TBaseDelegate<void,TSharedPtr<FGraphActionNode,0>,enum ESelectInfo::Type>::ExecuteIfBound() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:624] UE4Editor-GraphEditor.dll!SListView<TSharedPtr<FGraphActionNode,0> >::Private_SignalSelectionChanged() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\public\widgets\views\slistview.h:729] UE4Editor-GraphEditor.dll!SGraphActionMenu::SelectItemByName() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\grapheditor\private\sgraphactionmenu.cpp:559] UE4Editor-Kismet.dll!SMyBlueprint::ClearGraphActionMenuSelection() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\kismet\private\smyblueprint.cpp:2758] UE4Editor-Kismet.dll!FBlueprintEditor::ClearSelectionStateFor() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\kismet\private\blueprinteditor.cpp:812] UE4Editor-Kismet.dll!FBlueprintEditor::HandleUndoTransaction() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\kismet\private\blueprinteditor.cpp:2892] UE4Editor-Kismet.dll!FBlueprintEditor::PostUndo() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\kismet\private\blueprinteditor.cpp:2906] UE4Editor-UnrealEd.dll!UEditorEngine::BroadcastPostUndo() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\unrealed\private\editorserver.cpp:5045] UE4Editor-UnrealEd.dll!UEditorEngine::HandleTransactorUndo() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\unrealed\private\editorserver.cpp:1186] UE4Editor-UnrealEd.dll!TBaseUObjectMethodDelegateInstance<0,UEditorEngine,TTypeWrapper<void> __cdecl(FUndoSessionContext,bool)>::Execute() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:597] UE4Editor-UnrealEd.dll!TBaseUObjectMethodDelegateInstance<0,UEditorEngine,void __cdecl(FUndoSessionContext,bool)>::ExecuteIfSafe() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:657] UE4Editor-UnrealEd.dll!TBaseMulticastDelegate<void,FUndoSessionContext,bool>::Broadcast() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:937] UE4Editor-UnrealEd.dll!UTransBuffer::Undo() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\unrealed\private\editortransaction.cpp:899] UE4Editor-Kismet.dll!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,TTypeWrapper<void> __cdecl(void)>::Execute() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:269] UE4Editor-Kismet.dll!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,void __cdecl(void)>::ExecuteIfSafe() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:345] UE4Editor-Slate.dll!FUICommandList::ConditionalProcessCommandBindings() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\commands\uicommandlist.cpp:216] UE4Editor-Slate.dll!FUICommandList::ProcessCommandBindings() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\commands\uicommandlist.cpp:160] UE4Editor-UnrealEd.dll!FBaseToolkit::ProcessCommandBindings() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\unrealed\private\toolkits\basetoolkit.cpp:74] UE4Editor-UnrealEd.dll!SStandaloneAssetEditorToolkitHost::OnKeyDown() [d:\build\++ue4+release-4.19+compile\sync\engine\source\editor\unrealed\private\toolkits\sstandaloneasseteditortoolkithost.cpp:324] UE4Editor-Slate.dll!<lambda_2afcd964c763e269e2d1a63f3a72f846>::operator()() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5011] UE4Editor-Slate.dll!FEventRouter::Route<FReply,FEventRouter::FBubblePolicy,FKeyEvent,<lambda_2afcd964c763e269e2d1a63f3a72f846> >() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:266] UE4Editor-Slate.dll!FEventRouter::RouteAlongFocusPath<FEventRouter::FBubblePolicy,<lambda_2afcd964c763e269e2d1a63f3a72f846>,FKeyEvent>() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:247] UE4Editor-Slate.dll!FSlateApplication::ProcessKeyDownEvent() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5009] UE4Editor-Slate.dll!FSlateApplication::OnKeyDown() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:4921] UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessDeferredMessage() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:1561] UE4Editor-ApplicationCore.dll!FWindowsApplication::DeferMessage() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:2172] UE4Editor-ApplicationCore.dll!FWindowsApplication::ProcessMessage() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:889] UE4Editor-ApplicationCore.dll!FWindowsApplication::AppWndProc() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsapplication.cpp:726] USER32.dll!UnknownFunction [] USER32.dll!UnknownFunction [] UE4Editor-ApplicationCore.dll!FWindowsPlatformApplicationMisc::PumpMessages() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\applicationcore\private\windows\windowsplatformapplicationmisc.cpp:129] UE4Editor.exe!FEngineLoop::Tick() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3263] UE4Editor.exe!GuardedMain() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\launch\private\launch.cpp:166] UE4Editor.exe!GuardedMainWrapper() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:144] UE4Editor.exe!WinMain() [d:\build\++ue4+release-4.19+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:223] UE4Editor.exe!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253] KERNEL32.DLL!UnknownFunction [] ntdll.dll!UnknownFunction []
I am not able to find world outliner how to enable it?
How can i modify the param name in EQS node
Hey, why do i get this when i snap two similar meshes together?
Undefined sysmbol: typeinfo for AActor when cross-compile linux dedicated server on windows
Lighting Turns Black in Play Mode
When I open UE4 4.24.3 it appears that. Does anyone know how to solve?
What method is used to fill polygonal regions when drawing spline mesh at run time?
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-64569 in the post.