From f21a980e374b46c978cec0d99145777653f4caca Mon Sep 17 00:00:00 2001 From: der richter Date: Sun, 1 Dec 2019 21:08:54 +0100 Subject: cocoa-cb: update and add more options to use new options handling this updates and add the maximized, minimized, keepaspect and ontop options to use the new options handling --- video/out/cocoa_cb_common.swift | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) (limited to 'video/out/cocoa_cb_common.swift') diff --git a/video/out/cocoa_cb_common.swift b/video/out/cocoa_cb_common.swift index aa1315fbbf..6e016812ab 100644 --- a/video/out/cocoa_cb_common.swift +++ b/video/out/cocoa_cb_common.swift @@ -58,8 +58,6 @@ class CocoaCB: NSObject { super.init() layer = VideoLayer(cocoaCB: self) - libmpv.observeFlag("ontop") - libmpv.observeFlag("keepaspect-window") libmpv.observeString("macos-title-bar-style") libmpv.observeString("macos-title-bar-appearance") libmpv.observeString("macos-title-bar-material") @@ -459,6 +457,26 @@ class CocoaCB: NSObject { ccb.window?.toggleFullScreen(nil) } } + if opt! == UnsafeMutableRawPointer(&mpv.optsPtr.pointee.ontop) { + DispatchQueue.main.async { + ccb.window?.setOnTop(Bool(mpv.opts.ontop), Int(mpv.opts.ontop_level)) + } + } + if opt! == UnsafeMutableRawPointer(&mpv.optsPtr.pointee.keepaspect_window) { + DispatchQueue.main.async { + ccb.window?.keepAspect = Bool(mpv.opts.keepaspect_window) + } + } + if opt! == UnsafeMutableRawPointer(&mpv.optsPtr.pointee.window_minimized) { + DispatchQueue.main.async { + ccb.window?.setMinimized(Bool(mpv.opts.window_minimized)) + } + } + if opt! == UnsafeMutableRawPointer(&mpv.optsPtr.pointee.window_maximized) { + DispatchQueue.main.async { + ccb.window?.setMaximized(Bool(mpv.opts.window_maximized)) + } + } } return VO_TRUE case VOCTRL_GET_DISPLAY_FPS: @@ -574,14 +592,6 @@ class CocoaCB: NSObject { } switch String(cString: property.name) { - case "ontop": - if let data = LibmpvHelper.mpvFlagToBool(property.data) { - window?.setOnTop(data, Int(mpv?.opts.ontop_level ?? -1)) - } - case "keepaspect-window": - if let data = LibmpvHelper.mpvFlagToBool(property.data) { - window?.keepAspect = data - } case "macos-title-bar-appearance": if let data = LibmpvHelper.mpvStringArrayToString(property.data) { titleBar?.set(appearance: data) -- cgit v1.2.3