feat(mac,ios,playback,store): initial macos implementation
This commit is contained in:
1 parent
e5bb559d7f
commit
d2d7166cf0
72 files changed
+4452
-318
No files matched your search
@@ -29,8 +29,10 @@ public enum PlaybackCommand: Codable, Sendable {
|
||||
case move(item: QueueItem.ID, after: QueueItem.ID?)
|
||||
case remove(QueueItem.ID)
|
||||
case clearUpcoming
|
||||
case clearHistory
|
||||
case setShuffle(Bool)
|
||||
case setRepeat(RepeatMode)
|
||||
case setVolume(Double)
|
||||
}
|
||||
|
||||
public struct PlaybackAnchor: Hashable, Sendable {
|
||||
@@ -63,6 +65,7 @@ public struct PlaybackState: Hashable, Sendable {
|
||||
public var anchor = PlaybackAnchor(position: 0, instant: .now, rate: 0)
|
||||
public var isShuffled = false
|
||||
public var repeatMode: RepeatMode = .off
|
||||
public var volume: Double = 1
|
||||
|
||||
public init() {}
|
||||
}
|
||||
@@ -81,8 +84,10 @@ public protocol OutputEngine: Sendable {
|
||||
func pause() async
|
||||
func seek(to position: TimeInterval) async
|
||||
func stop() async
|
||||
func setVolume(_ volume: Double) async
|
||||
}
|
||||
|
||||
public extension OutputEngine {
|
||||
func prepare(_: QueueItem?) async {}
|
||||
func setVolume(_: Double) async {}
|
||||
}
|
||||
Reference in new issue
Block a user