fix(iOS): use top-most presented view controller for fullscreen presentation on iOS (#4753)
This commit is contained in:
@@ -1090,15 +1090,9 @@ class RCTVideo: UIView, RCTVideoPlayerViewControllerDelegate, RCTPlayerObserverH
|
|||||||
_playerViewController?.modalPresentationStyle = .fullScreen
|
_playerViewController?.modalPresentationStyle = .fullScreen
|
||||||
|
|
||||||
// Find the nearest view controller
|
// Find the nearest view controller
|
||||||
var viewController: UIViewController! = self.firstAvailableUIViewController()
|
var viewController: UIViewController! = RCTPresentedViewController() ?? RCTKeyWindow()?.rootViewController
|
||||||
if viewController == nil {
|
guard viewController != nil else { return }
|
||||||
guard let keyWindow = RCTVideoUtils.getCurrentWindow() else { return }
|
while let presented = viewController.presentedViewController { viewController = presented }
|
||||||
|
|
||||||
viewController = keyWindow.rootViewController
|
|
||||||
if !viewController.children.isEmpty {
|
|
||||||
viewController = viewController.children.last
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if viewController != nil {
|
if viewController != nil {
|
||||||
_presentingViewController = viewController
|
_presentingViewController = viewController
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user