Fall back to using the first logged in account on beacon connection when no other player is found.
Fix resource leak in windows splash screen.
[REVIEW] [at]chris.gagnon, [at]eric.knapik, [at]sam.zamani
#preflight 628e6f2982597362d1061d09
#ROBOMERGE-AUTHOR: michael.atchison
#ROBOMERGE-SOURCE: CL 20372471 via CL 20372807 via CL 20373493 via CL 20373519
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)
[CL 20374253 by michael atchison in ue5-main branch]
The previous default of CanBeUsedOnAnyThread() proved unsafe since some output devices can safely be used on any thread but cannot safely be used during a crash. CanBeUsedOnAnyThread() was used pre-5.1 to control serialization to an output device during a crash, but optimizations in 5.1 have uncovered that some of these were never safe.
#preflight 62856506614041edb7a6de4b
#rb Zousar.Shaker
#rnx
[CL 20280354 by Devin Doucette in ue5-main branch]
#p4v-cherrypick 19897004
#ROBOMERGE-AUTHOR: james.doverspike
#ROBOMERGE-SOURCE: CL 19896998 via CL 19897000 via CL 19897003 via CL 19897308 via CL 19897311
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)
[CL 19897438 by james doverspike in ue5-main branch]
Or-ing in WS_EX_TOOLWINDOW into the window style prevents the splash screen's taskbar item from appearing until its visible on screen.
Since it takes several seconds before the splash screen appears, if you Alt-Tab to another application before it appears it causes the splash screen to not be shown, and since it's not shown there is no task bar icon, so you cannot see the progress bar or select the splash screen via the taskbar.
Also, the splash screen appears to go to the bottom of the z-order, causing the user to have to minimize/close a lot of windows to click it to allocate the taskbar item.
#rnx
#rb trivial
#preflight 6205c060b84973a2bb6f4f3d
#ROBOMERGE-AUTHOR: geoff.evans
#ROBOMERGE-SOURCE: CL 18949297 via CL 18949298 via CL 18949302 via CL 18952902 via CL 18953149
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)
[CL 18953163 by geoff evans in ue5-main branch]
#rb danny.couture
#ROBOMERGE-AUTHOR: martin.sevigny
#ROBOMERGE-SOURCE: CL 18405111 in //UE5/Release-5.0/... via CL 18405120 via CL 18405134
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Test -> Main) (v897-18405271)
[CL 18406731 by martin sevigny in ue5-main branch]
- Moved FAccessibleEventArgs out of FGenericAccessibleMessageHandler to avoid the need to include GenericAccessibleInterfaces.h in header files where all
they really need is a forward declaration of the struct.
- Removed instances of FGenericAccessibleMessageHandler::FAccessibleEventArgs to FAccessibleEventArgs.
- Updated API for IAccessibleWidget and IAccessibleWindow that deal with getting and setting focus to also take a user index parameter. This facilitates multiple accessible users for the same application.
-Updated platform files that leverage the old IAccessibleWidget and IAccessibleWindow focus API
- Introduced FGenericAccessibleUser and FGenericAccessibleUserRegistry to GenericAccessibleInterfaces.h. An FGenericAccessibleUser is meant to be analogous to FSlateUser that keeps track of hardware users' focus. An FGenericAccessibleUserRegistry is a registry of FGenericAccessibleUsers. These interfaces are meant to insulate FGenericAccessibleMessageHandler from storing and tracking
focus etc when that should be an implementation detail by other modules.
- Refactored how FSlateCoreAccessibleWidgets set focus in the application. Accessible focus is now unified to a single code path that starts from FSlateAccessibleMessageHandler. Requests to shift accessible focus should be done by raising a Slate accessible event or through IAccessibleWidget::SetUserFocus()
- Introduced finer grain querying of focus capabilities for an IAccessibleWidget. Users can now check if an AccessibleWidget supports regular focus (keyboard/gamepad), if it supports accessible focus and if the widget can currently accept regular or accessible focus.
-Updated platforms to use the new FGenericAccessibleUser and FGenericAccessibleUserRegistry ApI to update and retrieve user focus.
#preflight: 61af2481813adc3fbb2ca7d5
[CL 18396441 by Leon Huang in ue5-main branch]
around for modules that require more accessibility information such as User/Controller Id.
#rnx
#rb: Patrick.Boutot
#preflight: 617b17e05aecf4000120a61a
#ROBOMERGE-AUTHOR: leon.huang
#ROBOMERGE-SOURCE: CL 17974834 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v885-17909292)
[CL 17974837 by leon huang in ue5-release-engine-test branch]
around for modules that require more accessibility information such as User/Controller Id.
#rnx
#rb: Patrick.Boutot
#preflight: 617b17e05aecf4000120a61a
[CL 17974834 by Leon Huang in ue5-main branch]
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035
[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
- This is already handled in the engine loop and could lead to multiple sleeps being done (see ShouldThrottleCPUUsage).
#rb Francis.Hurteau, Matt.Kuhlenschmidt
#ROBOMERGE-AUTHOR: danny.couture
#ROBOMERGE-SOURCE: CL 17660067 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v875-17642767)
[CL 17660082 by danny couture in ue5-release-engine-test branch]
- This is already handled in the engine loop and could lead to multiple sleeps being done (see ShouldThrottleCPUUsage).
#rb Francis.Hurteau, Matt.Kuhlenschmidt
[CL 17660067 by danny couture in ue5-main branch]
Change FPlatformUserId into a proper struct with an internal id that will be allocated by the platform
Converting int->FPlatformUserId is currently deprecated, but the other direction is not deprecated until the online/input code can be converted
GenericApplicaitonMessageHandler will convert back and forth between controller Id and FPlatformUserId as needed
Add support for platform user id to LocalPlayer, by default it is synchronized with ControllerId
#rb david.harvey, ben.hoffman
#ROBOMERGE-AUTHOR: ben.zeigler
#ROBOMERGE-SOURCE: CL 17597808 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v871-17566257)
[CL 17597827 by ben zeigler in ue5-release-engine-test branch]
Change FPlatformUserId into a proper struct with an internal id that will be allocated by the platform
Converting int->FPlatformUserId is currently deprecated, but the other direction is not deprecated until the online/input code can be converted
GenericApplicaitonMessageHandler will convert back and forth between controller Id and FPlatformUserId as needed
Add support for platform user id to LocalPlayer, by default it is synchronized with ControllerId
#rb david.harvey, ben.hoffman
[CL 17597808 by ben zeigler in ue5-main branch]
the Windows UIA dll is used.
#rnx
#rb: David.Harvey
#preflight: 614470ce81695600012d14f9
[FYI] Jason.Stasik
#ROBOMERGE-AUTHOR: leon.huang
#ROBOMERGE-SOURCE: CL 17558697 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)
[CL 17558711 by leon huang in ue5-release-engine-test branch]