summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorder richter <der.richter@gmx.de>2019-12-24 18:28:46 +0100
committerder richter <der.richter@gmx.de>2019-12-24 21:51:24 +0100
commitd9e13f42b8d2490bf89b0af4dd1d6a92d280a9af (patch)
tree1d1ac7c2f3bfec71a54b8b1c65d895ddbb1b200b
parent8e9644761a66ce277f1bf33bb5f6ab90375027de (diff)
downloadmpv-d9e13f42b8d2490bf89b0af4dd1d6a92d280a9af.tar.bz2
mpv-d9e13f42b8d2490bf89b0af4dd1d6a92d280a9af.tar.xz
cocoa-cb: implement hidpi scale reporting
-rw-r--r--video/out/cocoa-cb/window.swift1
-rw-r--r--video/out/cocoa_cb_common.swift6
2 files changed, 7 insertions, 0 deletions
diff --git a/video/out/cocoa-cb/window.swift b/video/out/cocoa-cb/window.swift
index 90438591ab..55c0fa1688 100644
--- a/video/out/cocoa-cb/window.swift
+++ b/video/out/cocoa-cb/window.swift
@@ -474,6 +474,7 @@ class Window: NSWindow, NSWindowDelegate {
func windowDidChangeBackingProperties(_ notification: Notification) {
cocoaCB.layer?.contentsScale = backingScaleFactor
+ cocoaCB.flagEvents(VO_EVENT_WIN_STATE)
}
func windowWillStartLiveResize(_ notification: Notification) {
diff --git a/video/out/cocoa_cb_common.swift b/video/out/cocoa_cb_common.swift
index 6e016812ab..b677fd6740 100644
--- a/video/out/cocoa_cb_common.swift
+++ b/video/out/cocoa_cb_common.swift
@@ -485,6 +485,12 @@ class CocoaCB: NSObject {
return VO_TRUE
}
return VO_FALSE
+ case VOCTRL_GET_HIDPI_SCALE:
+ if let scaleFactor = data?.assumingMemoryBound(to: CDouble.self) {
+ scaleFactor.pointee = Double(ccb.window?.backingScaleFactor ?? 1.0)
+ return VO_TRUE;
+ }
+ return VO_FALSE
case VOCTRL_RESTORE_SCREENSAVER:
ccb.enableDisplaySleep()
return VO_TRUE