* Monitors with notched screens (e.g. screens with camera housing built in) need to take into account the safeAreaInset when in fullscreen mode.
* Remove some unused and unexecutable code around getting the monitor name.
#jira UE-173891
#preflight https://horde.devtools.epicgames.com/job/63d0e0ed033e457ba8a1f78d
[CL 23849168 by zack neyland in ue5-main branch]
This relies on the base feedback context doing most of the work, as on other platforms.
Coloring was removed from the default Mac feedback context because it has no effect on the default output devices anyway. Output devices that do want to set color based on verbosity should incorporate that logic themselves in a thread-safe way instead of relying on the color being changed globally.
#jira UE-152840
#preflight 63cabcf76e7995c750c919da
#rb Zousar.Shaker
#rnx
[CL 23790894 by Devin Doucette in ue5-main branch]
- Moved boilerplate program startup code into a shared Obj-C class, MacProgramDelegate
#rb zack.neyland
#fyi brandon.schaefer,robert.seiver
#preflight 632b45dba4769ad71456b18b
[CL 22116672 by Josh Adams in ue5-main branch]
CocoaWindows now store their Type. This is used so that we can make sure that we can call OnWindowActivationChanged
when the menu closes. This is needed to restore focus in the main window after the menu is triggered. Several other
utility windows are now not treated as main windows.
[REVIEW] will.damon
#jira UE-139065
#rnx
#preflight n/a
#lockdown cristina.riveron
#ROBOMERGE-AUTHOR: dave.hunter
#ROBOMERGE-SOURCE: CL 19093114 via CL 19093772 via CL 19094565 via CL 19096071 via CL 19105329
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)
[CL 19146632 by dave hunter in ue5-main branch]
I've added a boolean AllowMainWindow to CocoaWindow which is now set to true unless the window is a menu. This status is reported to the OS via the canBecomeMainWindow method. It is also used by the MacApplication which will now not activate a window when a window that's being closed is not a main window (via AllowMainWindow).
#rb will.damon
#jira UE-137460
#preflight n/a
#ROBOMERGE-AUTHOR: dave.hunter
#ROBOMERGE-SOURCE: CL 18734334 in //UE5/Release-5.0/... via CL 18734343 via CL 18734356
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)
[CL 18734361 by dave hunter 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
[CL 17974834 by Leon Huang in ue5-main branch]
#rnx
#rb none
#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870549 by ryan durand in Main branch]
#jira UE-83456
#rnx
#rb michael.trepka
#ROBOMERGE-SOURCE: CL 10125724 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v587-10111126)
[CL 10125757 by jason stasik in Main branch]