summaryrefslogtreecommitdiffstats
path: root/video/out/mac/common.swift
diff options
context:
space:
mode:
authorder richter <der.richter@gmx.de>2024-03-19 19:50:44 +0100
committerder richter <der.richter@gmx.de>2024-03-21 18:33:15 +0100
commitdc5059d0279a1d809022760b67b4a9d64854d294 (patch)
treeb61a259def741f7c0a719613a1a4b40181541b9e /video/out/mac/common.swift
parent283d0877c470bf10efff390ea8037a819db501a7 (diff)
downloadmpv-dc5059d0279a1d809022760b67b4a9d64854d294.tar.bz2
mpv-dc5059d0279a1d809022760b67b4a9d64854d294.tar.xz
mac/option: move option functionality from mpv helper to option helper
delete now empty mpv helper
Diffstat (limited to 'video/out/mac/common.swift')
-rw-r--r--video/out/mac/common.swift118
1 files changed, 59 insertions, 59 deletions
diff --git a/video/out/mac/common.swift b/video/out/mac/common.swift
index 7aac8fa68a..be1e628801 100644
--- a/video/out/mac/common.swift
+++ b/video/out/mac/common.swift
@@ -19,7 +19,7 @@ import Cocoa
import IOKit.pwr_mgt
class Common: NSObject {
- var mpv: MPVHelper?
+ var option: OptionHelper?
var input: InputHelper?
var log: LogHelper
let queue: DispatchQueue = DispatchQueue(label: "io.mpv.queue")
@@ -52,8 +52,8 @@ class Common: NSObject {
}
func initMisc(_ vo: UnsafeMutablePointer<vo>) {
- guard let mpv = mpv else {
- log.sendError("Something went wrong, no MPVHelper was initialized")
+ guard let option = option else {
+ log.sendError("Something went wrong, no OptionHelper was initialized")
exit(1)
}
@@ -61,17 +61,17 @@ class Common: NSObject {
initLightSensor()
addDisplayReconfigureObserver()
addAppNotifications()
- mpv.setMacOptionCallback(macOptsWakeupCallback, context: self)
+ option.setMacOptionCallback(macOptsWakeupCallback, context: self)
}
func initApp() {
- guard let mpv = mpv else {
- log.sendError("Something went wrong, no MPVHelper was initialized")
+ guard let option = option else {
+ log.sendError("Something went wrong, no OptionHelper was initialized")
exit(1)
}
var policy: NSApplication.ActivationPolicy = .regular
- switch mpv.macOpts.macos_app_activation_policy {
+ switch option.macOpts.macos_app_activation_policy {
case 0:
policy = .regular
case 1:
@@ -87,7 +87,7 @@ class Common: NSObject {
}
func initWindow(_ vo: UnsafeMutablePointer<vo>, _ previousActiveApp: NSRunningApplication?) {
- let (mpv, targetScreen, wr) = getInitProperties(vo)
+ let (option, targetScreen, wr) = getInitProperties(vo)
guard let view = self.view else {
log.sendError("Something went wrong, no View was initialized")
@@ -100,16 +100,16 @@ class Common: NSObject {
exit(1)
}
- window.setOnTop(Bool(mpv.opts.ontop), Int(mpv.opts.ontop_level))
- window.setOnAllWorkspaces(Bool(mpv.opts.all_workspaces))
- window.keepAspect = Bool(mpv.opts.keepaspect_window)
+ window.setOnTop(Bool(option.opts.ontop), Int(option.opts.ontop_level))
+ window.setOnAllWorkspaces(Bool(option.opts.all_workspaces))
+ window.keepAspect = Bool(option.opts.keepaspect_window)
window.title = title
- window.border = Bool(mpv.opts.border)
+ window.border = Bool(option.opts.border)
titleBar = TitleBar(frame: wr, window: window, common: self)
- let maximized = Bool(mpv.opts.window_maximized)
- let minimized = Bool(mpv.opts.window_minimized)
+ let maximized = Bool(option.opts.window_maximized)
+ let minimized = Bool(option.opts.window_minimized)
window.isRestorable = false
window.isReleasedWhenClosed = false
window.setMaximized((minimized || !maximized) ? window.isZoomed : maximized)
@@ -123,10 +123,10 @@ class Common: NSObject {
window.orderFront(nil)
}
- NSApp.activate(ignoringOtherApps: mpv.opts.focus_on >= 1)
+ NSApp.activate(ignoringOtherApps: option.opts.focus_on >= 1)
// workaround for macOS 10.15 to refocus the previous App
- if mpv.opts.focus_on == 0 {
+ if option.opts.focus_on == 0 {
previousActiveApp?.activate()
}
}
@@ -147,7 +147,7 @@ class Common: NSObject {
}
func initWindowState() {
- if mpv?.opts.fullscreen ?? false {
+ if option?.opts.fullscreen ?? false {
DispatchQueue.main.async {
self.window?.toggleFullScreen(nil)
}
@@ -184,7 +184,7 @@ class Common: NSObject {
guard let screen = getTargetScreen(forFullscreen: false) ?? NSScreen.main,
let link = self.link else
{
- log.sendWarning("Couldn't start DisplayLink, no MPVHelper, Screen or DisplayLink available")
+ log.sendWarning("Couldn't start DisplayLink, no OptionHelper, Screen or DisplayLink available")
return
}
@@ -409,14 +409,14 @@ class Common: NSObject {
}
func getTargetScreen(forFullscreen fs: Bool) -> NSScreen? {
- guard let mpv = mpv else {
+ guard let option = option else {
log.sendWarning("Unexpected nil value in getTargetScreen")
return nil
}
- let screenID = fs ? mpv.opts.fsscreen_id : mpv.opts.screen_id
+ let screenID = fs ? option.opts.fsscreen_id : option.opts.screen_id
var name: String?
- if let screenName = fs ? mpv.opts.fsscreen_name : mpv.opts.screen_name {
+ if let screenName = fs ? option.opts.fsscreen_name : option.opts.screen_name {
name = String(cString: screenName)
}
return getScreenBy(id: Int(screenID)) ?? getScreenBy(name: name)
@@ -431,7 +431,7 @@ class Common: NSObject {
func getWindowGeometry(forScreen screen: NSScreen,
videoOut vo: UnsafeMutablePointer<vo>) -> NSRect {
let r = screen.convertRectToBacking(screen.frame)
- let targetFrame = (mpv?.macOpts.macos_geometry_calculation ?? Int32(FRAME_VISIBLE)) == FRAME_VISIBLE
+ let targetFrame = (option?.macOpts.macos_geometry_calculation ?? Int32(FRAME_VISIBLE)) == FRAME_VISIBLE
? screen.visibleFrame : screen.frame
let rv = screen.convertRectToBacking(targetFrame)
@@ -458,9 +458,9 @@ class Common: NSObject {
return screen.convertRectFromBacking(NSMakeRect(x, y, width, height))
}
- func getInitProperties(_ vo: UnsafeMutablePointer<vo>) -> (MPVHelper, NSScreen, NSRect) {
- guard let mpv = mpv else {
- log.sendError("Something went wrong, no MPVHelper was initialized")
+ func getInitProperties(_ vo: UnsafeMutablePointer<vo>) -> (OptionHelper, NSScreen, NSRect) {
+ guard let option = option else {
+ log.sendError("Something went wrong, no OptionHelper was initialized")
exit(1)
}
guard let targetScreen = getTargetScreen(forFullscreen: false) ?? NSScreen.main else {
@@ -470,7 +470,7 @@ class Common: NSObject {
let wr = getWindowGeometry(forScreen: targetScreen, videoOut: vo)
- return (mpv, targetScreen, wr)
+ return (option, targetScreen, wr)
}
// call before initApp, because on macOS +10.15 it changes the active App
@@ -483,7 +483,7 @@ class Common: NSObject {
events |= ev
eventsLock.unlock()
- guard let vout = mpv?.vo else {
+ guard let vout = option?.vo else {
log.sendWarning("vo nil in flagEvents")
return
}
@@ -515,7 +515,7 @@ class Common: NSObject {
request: UInt32,
data: UnsafeMutableRawPointer?) -> Int32
{
- guard let mpv = mpv else {
+ guard let option = option else {
log.sendWarning("Unexpected nil value in Control Callback")
return VO_FALSE
}
@@ -526,45 +526,45 @@ class Common: NSObject {
return VO_TRUE
case VOCTRL_VO_OPTS_CHANGED:
var opt: UnsafeMutableRawPointer?
- while mpv.nextChangedOption(property: &opt) {
+ while option.nextChangedOption(property: &opt) {
switch opt {
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.border):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.border):
DispatchQueue.main.async {
- self.window?.border = Bool(mpv.opts.border)
+ self.window?.border = Bool(option.opts.border)
}
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.fullscreen):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.fullscreen):
DispatchQueue.main.async {
self.window?.toggleFullScreen(nil)
}
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.ontop): fallthrough
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.ontop_level):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.ontop): fallthrough
+ case TypeHelper.toPointer(&option.optsPtr.pointee.ontop_level):
DispatchQueue.main.async {
- self.window?.setOnTop(Bool(mpv.opts.ontop), Int(mpv.opts.ontop_level))
+ self.window?.setOnTop(Bool(option.opts.ontop), Int(option.opts.ontop_level))
}
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.all_workspaces):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.all_workspaces):
DispatchQueue.main.async {
- self.window?.setOnAllWorkspaces(Bool(mpv.opts.all_workspaces))
+ self.window?.setOnAllWorkspaces(Bool(option.opts.all_workspaces))
}
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.keepaspect_window):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.keepaspect_window):
DispatchQueue.main.async {
- self.window?.keepAspect = Bool(mpv.opts.keepaspect_window)
+ self.window?.keepAspect = Bool(option.opts.keepaspect_window)
}
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.window_minimized):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.window_minimized):
DispatchQueue.main.async {
- self.window?.setMinimized(Bool(mpv.opts.window_minimized))
+ self.window?.setMinimized(Bool(option.opts.window_minimized))
}
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.window_maximized):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.window_maximized):
DispatchQueue.main.async {
- self.window?.setMaximized(Bool(mpv.opts.window_maximized))
+ self.window?.setMaximized(Bool(option.opts.window_maximized))
}
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.cursor_passthrough):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.cursor_passthrough):
DispatchQueue.main.async {
- self.window?.ignoresMouseEvents = mpv.opts.cursor_passthrough
+ self.window?.ignoresMouseEvents = option.opts.cursor_passthrough
}
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.geometry): fallthrough
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.autofit): fallthrough
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.autofit_smaller): fallthrough
- case TypeHelper.toPointer(&mpv.optsPtr.pointee.autofit_larger):
+ case TypeHelper.toPointer(&option.optsPtr.pointee.geometry): fallthrough
+ case TypeHelper.toPointer(&option.optsPtr.pointee.autofit): fallthrough
+ case TypeHelper.toPointer(&option.optsPtr.pointee.autofit_smaller): fallthrough
+ case TypeHelper.toPointer(&option.optsPtr.pointee.autofit_larger):
DispatchQueue.main.async {
let (_, _, wr) = self.getInitProperties(vo)
self.window?.updateFrame(wr)
@@ -630,7 +630,7 @@ class Common: NSObject {
let sizeData = data!.assumingMemoryBound(to: Int32.self)
let size = UnsafeMutableBufferPointer(start: sizeData, count: 2)
var rect = window?.unfsContentFrame ?? NSRect(x: 0, y: 0, width: 1280, height: 720)
- if let screen = window?.currentScreen, !Bool(mpv.opts.hidpi_window_scale) {
+ if let screen = window?.currentScreen, !Bool(option.opts.hidpi_window_scale) {
rect = screen.convertRectToBacking(rect)
}
@@ -642,7 +642,7 @@ class Common: NSObject {
let size = UnsafeBufferPointer(start: sizeData, count: 2)
var rect = NSMakeRect(0, 0, CGFloat(size[0]), CGFloat(size[1]))
DispatchQueue.main.async {
- if let screen = self.window?.currentScreen, !Bool(self.mpv?.opts.hidpi_window_scale ?? true) {
+ if let screen = self.window?.currentScreen, !Bool(self.option?.opts.hidpi_window_scale ?? true) {
rect = screen.convertRectFromBacking(rect)
}
self.window?.updateSize(rect.size)
@@ -692,20 +692,20 @@ class Common: NSObject {
}
func macOptsUpdate() {
- guard let mpv = mpv else {
+ guard let option = option else {
log.sendWarning("Unexpected nil value in mac opts update")
return
}
var opt: UnsafeMutableRawPointer?
- while mpv.nextChangedMacOption(property: &opt) {
+ while option.nextChangedMacOption(property: &opt) {
switch opt {
- case TypeHelper.toPointer(&mpv.macOptsPtr.pointee.macos_title_bar_appearance):
- titleBar?.set(appearance: Int(mpv.macOpts.macos_title_bar_appearance))
- case TypeHelper.toPointer(&mpv.macOptsPtr.pointee.macos_title_bar_material):
- titleBar?.set(material: Int(mpv.macOpts.macos_title_bar_material))
- case TypeHelper.toPointer(&mpv.macOptsPtr.pointee.macos_title_bar_color):
- titleBar?.set(color: mpv.macOpts.macos_title_bar_color)
+ case TypeHelper.toPointer(&option.macOptsPtr.pointee.macos_title_bar_appearance):
+ titleBar?.set(appearance: Int(option.macOpts.macos_title_bar_appearance))
+ case TypeHelper.toPointer(&option.macOptsPtr.pointee.macos_title_bar_material):
+ titleBar?.set(material: Int(option.macOpts.macos_title_bar_material))
+ case TypeHelper.toPointer(&option.macOptsPtr.pointee.macos_title_bar_color):
+ titleBar?.set(color: option.macOpts.macos_title_bar_color)
default:
break
}