diff options
Diffstat (limited to 'video')
-rw-r--r-- | video/out/cocoa_cb_common.swift | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/video/out/cocoa_cb_common.swift b/video/out/cocoa_cb_common.swift index 305766c9f6..d5cc9671af 100644 --- a/video/out/cocoa_cb_common.swift +++ b/video/out/cocoa_cb_common.swift @@ -459,6 +459,12 @@ class CocoaCB: NSObject { } func shutdown(_ destroy: Bool = false) { + isShuttingDown = window?.isAnimating ?? false || window?.isInFullscreen ?? false + if window?.isInFullscreen ?? false && !(window?.isAnimating ?? false) { + window.close() + } + if isShuttingDown { return } + setCursorVisiblility(true) stopDisplaylink() uninitLightSensor() @@ -476,10 +482,6 @@ class CocoaCB: NSObject { func processEvent(_ event: UnsafePointer<mpv_event>) { switch event.pointee.event_id { case MPV_EVENT_SHUTDOWN: - if window != nil && window.isAnimating { - isShuttingDown = true - return - } shutdown() case MPV_EVENT_PROPERTY_CHANGE: if backendState == .initialized { |