- Made action domain cache optional to denote if a widget tried to get an action domain but couldn't versus one that simply didn't try yet
- Evaluate the current widget when calculating the action domain as it might have a meta data
- Fixed crash when stopping in PIE without a full setup when action domain are enabled
[REVIEW] [at]prajwal.manjunath
#ROBOMERGE-AUTHOR: jc.authier
#ROBOMERGE-SOURCE: CL 19100743 via CL 19103235 via CL 19106069 via CL 19106115 via CL 19110127
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19148454 by jc authier in ue5-main branch]
- Change GetCalculatedActionDomain to first check for a meta data on the widget to get the action domain. Else check if the CAW is overriding the action domain
- Add ICommonInputActionDomainMetaData to define the action domain used by a SWidget
- Add description to CVarEnableActionDomainRouting
[REVIEW] [at]prajwal.manjunath
#ROBOMERGE-AUTHOR: jc.authier
#ROBOMERGE-SOURCE: CL 19076506 via CL 19079995 via CL 19088418 via CL 19088500 via CL 19089497
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19131708 by jc authier in ue5-main branch]
- Removed the problematic static that caused the crash and introduced a new caching system via a UPlatformSettingsManager class that keeps explicit references to the settings instead of adding them to the root
- Switched the platform names to be more consistently FName instead of roundtripping through FString
- Slightly unrelated: Added DeterminesOutputType metadata to FindParentWidgetOfType to avoid needing an extra cast in typical usage
#jira UE-142875
#rb nick.darnell
#preflight 620c788a252ef638b5806fd7
#ROBOMERGE-AUTHOR: michael.noland
#ROBOMERGE-SOURCE: CL 19060400 in //UE5/Release-5.0/... via CL 19076932
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19120907 by michael noland in ue5-main branch]
- The detection criteria can be defined in gamepad assets
- Limited because XInput makes it totally impossible to distinguish between different controller types (other plugin sources will still work), so to preserve the ability to set a preference in project settings the logic prefers to stick with an existing match rather than switching to something else, but otherwise will prefer the first match found in the controller asset list
#codereview nick.darnell, daren.cheng
[CL 16716911 by Michael Noland in ue5-main branch]