From f913570aada74df0e56b3224bfe9f712c95789d1 Mon Sep 17 00:00:00 2001 From: Evgeny Zinoviev Date: Sat, 20 Feb 2021 23:07:00 +0300 Subject: mac: support --on-all-workspaces option --- video/out/mac/common.swift | 5 +++++ video/out/mac/window.swift | 8 ++++++++ 2 files changed, 13 insertions(+) (limited to 'video') diff --git a/video/out/mac/common.swift b/video/out/mac/common.swift index 6c3d0fcfb3..7ede81cbda 100644 --- a/video/out/mac/common.swift +++ b/video/out/mac/common.swift @@ -100,6 +100,7 @@ class Common: NSObject { } 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.title = title window.border = Bool(mpv.opts.border) @@ -547,6 +548,10 @@ class Common: NSObject { DispatchQueue.main.async { self.window?.setOnTop(Bool(mpv.opts.ontop), Int(mpv.opts.ontop_level)) } + case MPVHelper.getPointer(&mpv.optsPtr.pointee.all_workspaces): + DispatchQueue.main.async { + self.window?.setOnAllWorkspaces(Bool(mpv.opts.all_workspaces)) + } case MPVHelper.getPointer(&mpv.optsPtr.pointee.keepaspect_window): DispatchQueue.main.async { self.window?.keepAspect = Bool(mpv.opts.keepaspect_window) diff --git a/video/out/mac/window.swift b/video/out/mac/window.swift index a418f2ce75..8bff330866 100644 --- a/video/out/mac/window.swift +++ b/video/out/mac/window.swift @@ -278,6 +278,14 @@ class Window: NSWindow, NSWindowDelegate { } } + func setOnAllWorkspaces(_ state: Bool) { + if state { + collectionBehavior.insert(.canJoinAllSpaces) + } else { + collectionBehavior.remove(.canJoinAllSpaces) + } + } + func setMinimized(_ stateWanted: Bool) { if isMiniaturized == stateWanted { return } -- cgit v1.2.3