         guard core.isFullscreen else { return }
         core.trigger(InternalEvent.userRequestExitFullscreen.rawValue)
     }
+
+    func destroy() { }
 }
 
 struct FullscreenByPlayer: FullscreenStateHandler {

        guard core.isFullscreen else { return }
        core.trigger(InternalEvent.willExitFullscreen.rawValue)
        core.isFullscreen = false
        core.parentView?.addSubviewMatchingConstraints(core)
        core.fullscreenController?.dismiss(animated: false, completion: nil)
        core.trigger(InternalEvent.didExitFullscreen.rawValue)
        core.trigger(InternalEvent.userRequestExitFullscreen.rawValue)
    }
}

    func set(fullscreen: Bool)
    func enterInFullscreen()
    func exitFullscreen()
    func destroy()
}

struct FullscreenByApp: FullscreenStateHandler {
