diff --git a/Model/Player/Backends/AVPlayerBackend.swift b/Model/Player/Backends/AVPlayerBackend.swift index cd4e1993..447ca7b9 100644 --- a/Model/Player/Backends/AVPlayerBackend.swift +++ b/Model/Player/Backends/AVPlayerBackend.swift @@ -455,7 +455,8 @@ final class AVPlayerBackend: PlayerBackend { switch playerItem.status { case .readyToPlay: if self.model.activeBackend == .appleAVPlayer, - self.isAutoplaying(playerItem) { + self.isAutoplaying(playerItem) + { self.model.updateAspectRatio() self.model.play() } diff --git a/Model/Player/PlayerQueue.swift b/Model/Player/PlayerQueue.swift index 8a95952d..1d8315d5 100644 --- a/Model/Player/PlayerQueue.swift +++ b/Model/Player/PlayerQueue.swift @@ -9,9 +9,7 @@ extension PlayerModel { } func play(_ videos: [Video]) { - videos.forEach { video in - enqueueVideo(video, loadDetails: false) - } + videos.forEach { enqueueVideo($0, loadDetails: false) } #if os(iOS) onPresentPlayer = { [weak self] in self?.advanceToNextItem() } diff --git a/Shared/OpenURLHandler.swift b/Shared/OpenURLHandler.swift index 4dbf6429..4499c959 100644 --- a/Shared/OpenURLHandler.swift +++ b/Shared/OpenURLHandler.swift @@ -67,8 +67,8 @@ struct OpenURLHandler { default: navigation.presentAlert(title: "Error", message: "This URL could not be opened") #if os(macOS) - guard !Windows.main.isOpen else { return } - navigation.presentingAlertInVideoPlayer = true + guard !Windows.main.isOpen else { return } + navigation.presentingAlertInVideoPlayer = true #endif } } diff --git a/Shared/Player/PlayerBackendView.swift b/Shared/Player/PlayerBackendView.swift index daf7f846..8348b8e1 100644 --- a/Shared/Player/PlayerBackendView.swift +++ b/Shared/Player/PlayerBackendView.swift @@ -30,9 +30,7 @@ struct PlayerBackendView: View { } .overlay(GeometryReader { proxy in Color.clear - .onAppear { - player.playerSize = proxy.size - } + .onAppear { player.playerSize = proxy.size } .onChange(of: proxy.size) { _ in player.playerSize = proxy.size } .onChange(of: player.controls.presentingOverlays) { _ in player.playerSize = proxy.size } .onChange(of: player.aspectRatio) { _ in player.playerSize = proxy.size } diff --git a/Shared/Player/VideoPlayerView.swift b/Shared/Player/VideoPlayerView.swift index 0ef29e33..5eabd028 100644 --- a/Shared/Player/VideoPlayerView.swift +++ b/Shared/Player/VideoPlayerView.swift @@ -210,33 +210,33 @@ struct VideoPlayerView: View { ) .overlay(playerPlaceholder) #endif - .frame(maxWidth: fullScreenLayout ? .infinity : nil, maxHeight: fullScreenLayout ? .infinity : nil) - .onHover { hovering in - hoveringPlayer = hovering - hovering ? playerControls.show() : playerControls.hide() - } + .frame(maxWidth: fullScreenLayout ? .infinity : nil, maxHeight: fullScreenLayout ? .infinity : nil) + .onHover { hovering in + hoveringPlayer = hovering + hovering ? playerControls.show() : playerControls.hide() + } #if os(iOS) - .gesture(playerControls.presentingOverlays ? nil : playerDragGesture) - .onChange(of: dragGestureState) { _ in - if !dragGestureState { - onPlayerDragGestureEnded() - } - } - #elseif os(macOS) - .onAppear(perform: { - NSEvent.addLocalMonitorForEvents(matching: [.mouseMoved]) { - hoverThrottle.execute { - if !player.currentItem.isNil, hoveringPlayer { - playerControls.resetTimer() - } + .gesture(playerControls.presentingOverlays ? nil : playerDragGesture) + .onChange(of: dragGestureState) { _ in + if !dragGestureState { + onPlayerDragGestureEnded() } - - return $0 } - }) + #elseif os(macOS) + .onAppear(perform: { + NSEvent.addLocalMonitorForEvents(matching: [.mouseMoved]) { + hoverThrottle.execute { + if !player.currentItem.isNil, hoveringPlayer { + playerControls.resetTimer() + } + } + + return $0 + } + }) #endif - .background(Color.black) + .background(Color.black) #if !os(tvOS) if !fullScreenLayout { diff --git a/Shared/Videos/VideoCell.swift b/Shared/Videos/VideoCell.swift index acf8e403..de94921b 100644 --- a/Shared/Videos/VideoCell.swift +++ b/Shared/Videos/VideoCell.swift @@ -37,10 +37,8 @@ struct VideoCell: View { } var body: some View { - Group { - Button(action: playAction) { - content - } + Button(action: playAction) { + content } .opacity(contentOpacity) .buttonStyle(.plain) diff --git a/Shared/Views/ContentItemView.swift b/Shared/Views/ContentItemView.swift index 7ba73335..3776fc43 100644 --- a/Shared/Views/ContentItemView.swift +++ b/Shared/Views/ContentItemView.swift @@ -7,12 +7,12 @@ struct ContentItemView: View { var body: some View { Group { switch item.contentType { + case .video: + VideoCell(video: item.video) case .playlist: ChannelPlaylistCell(playlist: item.playlist) case .channel: ChannelCell(channel: item.channel) - case .video: - VideoCell(video: item.video) default: PlaceholderCell() } diff --git a/iOS/SafeArea.swift b/iOS/SafeArea.swift index e04f9fa3..2d4fb42f 100644 --- a/iOS/SafeArea.swift +++ b/iOS/SafeArea.swift @@ -10,8 +10,8 @@ struct SafeArea { static var scene: UIWindowScene? { UIApplication.shared.connectedScenes - .filter { $0.activationState == .foregroundActive } - .compactMap { $0 as? UIWindowScene } - .first + .filter { $0.activationState == .foregroundActive } + .compactMap { $0 as? UIWindowScene } + .first } }