import AppKit import AVKit import SwiftUI /// Dünne Hülle um AppKits `AVPlayerView` statt AVKits SwiftUI-`VideoPlayer`. /// /// `VideoPlayer` crasht auf manchen macOS-Ständen beim Öffnen mit einem /// Swift-Runtime-Fehler ("failed to demangle superclass of VideoPlayerView /// from mangled name 'So12AVPlayerViewC'") — ein Metadata-Bug in Apples /// eigener `_AVKit_SwiftUI`-Bridge, kein Fehler in diesem Code. `AVPlayerView` /// direkt per `NSViewRepresentable` einzubinden umgeht den kaputten Codepfad. struct PlayerView: NSViewRepresentable { let player: AVPlayer var controlsStyle: AVPlayerViewControlsStyle = .inline func makeNSView(context: Context) -> AVPlayerView { let view = AVPlayerView() view.player = player view.controlsStyle = controlsStyle view.showsFullScreenToggleButton = false return view } func updateNSView(_ nsView: AVPlayerView, context: Context) { if nsView.player !== player { nsView.player = player } } }