summaryrefslogtreecommitdiffstats
path: root/video/out
diff options
context:
space:
mode:
authorder richter <der.richter@gmx.de>2024-04-02 22:24:58 +0200
committerder richter <der.richter@gmx.de>2024-04-04 19:39:27 +0200
commitfc36e5d71ed38746ef52cf29cc329f1ae5b74884 (patch)
treeaf18841aadf5a5d60d2d197ae0a5caaae97eb47e /video/out
parentfef04315a179e2e3e36aad1976a7efebcbbe6995 (diff)
downloadmpv-fc36e5d71ed38746ef52cf29cc329f1ae5b74884.tar.bz2
mpv-fc36e5d71ed38746ef52cf29cc329f1ae5b74884.tar.xz
mac/window: fix unfs window size retrieval
the unfsContentFrame wasn't updated when externally resized leading to a wrong unfs window size afterwards. update it on windowDidResize event when not in fs, not animating and not live resizing.
Diffstat (limited to 'video/out')
-rw-r--r--video/out/mac/view.swift1
-rw-r--r--video/out/mac/window.swift3
2 files changed, 4 insertions, 0 deletions
diff --git a/video/out/mac/view.swift b/video/out/mac/view.swift
index 3c0f34722f..047a5238e4 100644
--- a/video/out/mac/view.swift
+++ b/video/out/mac/view.swift
@@ -165,6 +165,7 @@ class View: NSView, CALayerDelegate {
}
override func magnify(with event: NSEvent) {
+ common.window?.isAnimating = event.phase != .ended
event.phase == .ended ? common.windowDidEndLiveResize() : common.windowWillStartLiveResize()
common.window?.addWindowScale(Double(event.magnification))
}
diff --git a/video/out/mac/window.swift b/video/out/mac/window.swift
index 3c02bd90ca..fb82e3c274 100644
--- a/video/out/mac/window.swift
+++ b/video/out/mac/window.swift
@@ -550,6 +550,9 @@ class Window: NSWindow, NSWindowDelegate {
}
func windowDidResize(_ notification: Notification) {
+ if let contentViewFrame = contentView?.frame, !isAnimating && !isInFullscreen && !inLiveResize {
+ unfsContentFrame = convertToScreen(contentViewFrame)
+ }
common.windowDidResize()
}