summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorder richter <der.richter@gmx.de>2024-02-13 22:23:06 +0100
committerder richter <der.richter@gmx.de>2024-02-15 00:11:55 +0100
commit45192d94d356c25b032c0d6c360ed35fca6215aa (patch)
tree265ec0223e499717cd69ef527634315cf3c4f6cc
parente457cc260c89f492ba59a3012d77643b00e7fd55 (diff)
downloadmpv-45192d94d356c25b032c0d6c360ed35fca6215aa.tar.bz2
mpv-45192d94d356c25b032c0d6c360ed35fca6215aa.tar.xz
mac/remote: remove unnecessary nowPlayingInfo variable
no need to keep track of the nowPlayingInfo, MPNowPlayingInfoCenter already provides the current info.
-rw-r--r--osdep/macos/remote_command_center.swift21
1 files changed, 7 insertions, 14 deletions
diff --git a/osdep/macos/remote_command_center.swift b/osdep/macos/remote_command_center.swift
index ef648b6bf5..f09360f815 100644
--- a/osdep/macos/remote_command_center.swift
+++ b/osdep/macos/remote_command_center.swift
@@ -40,7 +40,6 @@ extension RemoteCommandCenter {
}
class RemoteCommandCenter: NSObject {
- var nowPlayingInfo: [String:Any] = [:]
var configs: [MPRemoteCommand:Config] = [:]
var disabledCommands: [MPRemoteCommand] = []
var isPaused: Bool = false { didSet { updateInfoCenter() } }
@@ -51,6 +50,7 @@ class RemoteCommandCenter: NSObject {
var chapter: String? { didSet { updateInfoCenter() } }
var album: String? { didSet { updateInfoCenter() } }
var artist: String? { didSet { updateInfoCenter() } }
+ var cover: NSImage = NSImage(size: NSSize(width: 256, height: 256))
var infoCenter: MPNowPlayingInfoCenter { get { return MPNowPlayingInfoCenter.default() } }
var commandCenter: MPRemoteCommandCenter { get { return MPRemoteCommandCenter.shared() } }
@@ -58,11 +58,6 @@ class RemoteCommandCenter: NSObject {
@objc override init() {
super.init()
- nowPlayingInfo = [
- MPNowPlayingInfoPropertyMediaType: NSNumber(value: MPNowPlayingInfoMediaType.video.rawValue),
- MPNowPlayingInfoPropertyPlaybackProgress: NSNumber(value: 0.0),
- ]
-
configs = [
commandCenter.pauseCommand: Config(key: MP_KEY_PAUSEONLY, handler: keyHandler),
commandCenter.playCommand: Config(key: MP_KEY_PLAYONLY, handler: keyHandler),
@@ -90,10 +85,7 @@ class RemoteCommandCenter: NSObject {
]
if let app = NSApp as? Application, let icon = app.getMPVIcon() {
- let albumArt = MPMediaItemArtwork(boundsSize: icon.size) { _ in
- return icon
- }
- nowPlayingInfo[MPMediaItemPropertyArtwork] = albumArt
+ cover = icon
}
for cmd in disabledCommands {
@@ -140,17 +132,18 @@ class RemoteCommandCenter: NSObject {
}
func updateInfoCenter() {
- nowPlayingInfo.merge([
+ infoCenter.playbackState = isPaused ? .paused : .playing
+ infoCenter.nowPlayingInfo = (infoCenter.nowPlayingInfo ?? [:]).merging([
+ MPNowPlayingInfoPropertyMediaType: NSNumber(value: MPNowPlayingInfoMediaType.video.rawValue),
+ MPNowPlayingInfoPropertyPlaybackProgress: NSNumber(value: 0.0),
MPNowPlayingInfoPropertyPlaybackRate: NSNumber(value: isPaused ? 0 : rate),
MPNowPlayingInfoPropertyElapsedPlaybackTime: NSNumber(value: position),
MPMediaItemPropertyPlaybackDuration: NSNumber(value: duration),
MPMediaItemPropertyTitle: title,
MPMediaItemPropertyArtist: artist ?? chapter ?? "",
MPMediaItemPropertyAlbumTitle: album ?? "",
+ MPMediaItemPropertyArtwork: MPMediaItemArtwork(boundsSize: cover.size) { _ in return self.cover }
]) { (_, new) in new }
-
- infoCenter.nowPlayingInfo = nowPlayingInfo
- infoCenter.playbackState = isPaused ? .paused : .playing
}
lazy var keyHandler: ConfigHandler = { event in