diff --git a/ios/hybrids/HybridVideoViewViewManager.swift b/ios/hybrids/HybridVideoViewViewManager.swift index d4668db0..9662106b 100644 --- a/ios/hybrids/HybridVideoViewViewManager.swift +++ b/ios/hybrids/HybridVideoViewViewManager.swift @@ -9,23 +9,31 @@ import Foundation import NitroModules class HybridVideoViewViewManager: HybridVideoViewViewManagerSpec { + weak var view: VideoComponentView? + var player: (any HybridVideoPlayerSpec)? { get { - view.player + guard let view = view else { + print("RN Video: VideoComponentView is no longer available. It is likely that the view was deallocated.") + return nil + } + return view.player } set { + guard let view = view else { + print("RN Video: VideoComponentView is no longer available. It is likely that the view was deallocated.") + return + } view.player = newValue } } - let view: VideoComponentView - init(nitroId: Double) throws { guard let view = VideoComponentView.globalViewsMap.object(forKey: NSNumber(value: nitroId)) else { throw RuntimeError.error(withMessage: "No view found for \(nitroId)") } - self.view = view + self.view = view } // Initialize HybridContext