#ROBOMERGE-OWNER: peter.sauerbrei
#ROBOMERGE-AUTHOR: peter.sauerbrei
#ROBOMERGE-SOURCE: CL 13182187 via CL 13185726 via CL 13185757 via CL 13185850 via CL 13185986
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v688-13145358)
[CL 13186129 by peter sauerbrei in Main branch]
#ROBOMERGE-SOURCE: CL 13096053 via CL 13096140 via CL 13096159 via CL 13096240 via CL 13096294
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v686-13045012)
[CL 13096381 by nick darnell in Main branch]
#jira UE-88155
#rb Allan.Bentham
#lockdown Cristina.Riveron
#ROBOMERGE-SOURCE: CL 12958685 in //UE4/Release-4.25/... via CL 12959617 via CL 12960358
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v682-12900288)
[CL 12960384 by jack porter in Main branch]
#jira UE-89921
#rb Allan.Bentham
#lockdown Cristina.Riveron
#ROBOMERGE-OWNER: jack.porter
#ROBOMERGE-AUTHOR: jack.porter
#ROBOMERGE-SOURCE: CL 12954544 in //UE4/Release-4.25/... via CL 12954546 via CL 12958639
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v682-12900288)
[CL 12958750 by jack porter in Main branch]
#ROBOMERGE-SOURCE: CL 12871462 via CL 12871463 via CL 12872798 via CL 12872862 via CL 12872971
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v681-12776863)
[CL 12873067 by chris bunner in Main branch]
[REVIEW] [at]peter.sauerbrei, [at]thomas.ross
#ROBOMERGE-SOURCE: CL 12869541 via CL 12869543 via CL 12872051 via CL 12872078 via CL 12872092
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v681-12776863)
[CL 12872109 by chris bunner in Main branch]
#rb jack.porter
#jira UE-91763
#lockdown christina.riveron
#ROBOMERGE-SOURCE: CL 12717223 in //UE4/Release-4.25/... via CL 12717241 via CL 12724799
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v676-12543919)
[CL 12724813 by axel riffard in Main branch]
#rb jack.porter
#jira UE-91763
#lockdown christina.riveron
#ROBOMERGE-SOURCE: CL 12689790 in //UE4/Release-4.25/... via CL 12689798 via CL 12689802
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v676-12543919)
[CL 12689807 by axel riffard in Main branch]
Add Android OpenGL FPlatformRHIFramePacer support optionally using swappy and relocate code from AndroidEGL
Add FIOSPlatformRHIFramePacer get/set frame pace functions to set rhi.syncinterval taking into account GetMaxRefreshRate
#rb Allan.Bentham
[FYI] Peter.Sauerbrei, Allan.Bentham
#ROBOMERGE-OWNER: jack.porter
#ROBOMERGE-AUTHOR: jack.porter
#ROBOMERGE-SOURCE: CL 12057106 via CL 12057107 via CL 12057110 via CL 12057112
#ROBOMERGE-BOT: (v656-11643781)
[CL 12057117 by jack porter in Main branch]
(This shouldn't be an abnormal term, but since a lot of these crashes trigger a crash inside crash report, that's where a lot of them get grouped)
When we need to present view controllers from Fortnite, we crawl the responder chain until we find a non-UIView. We assume this is a UIViewController, cast it as such, and return.
I expect this works for most UE4 projects since the responder hierarchy should be quite simple (e.g a UIView with a UIViewController) -- however since we're doing complex responder hierarchies now (many views, view controllers, etc), we should be a little more robust here.
# Test plan
Ran a preflight
Entered Fortnite, sent a whisper, confirmed app (still) didn't crash
#ROBOMERGE-SOURCE: CL 11710838 via CL 11710843 via CL 11710845 via CL 11710853
#ROBOMERGE-BOT: (v656-11643781)
[CL 11865092 by lincoln green in Main branch]
#jira UE-89195
#rb None
#rnx
#lockdown Cristina.Riveron
#ROBOMERGE-SOURCE: CL 11626015 in //UE4/Release-4.25/... via CL 11626023
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)
[CL 11626027 by jack porter in Main branch]