diff --git a/Packages/MediaUI/Sources/MediaUI/MediaUIAttachmentVideoView.swift b/Packages/MediaUI/Sources/MediaUI/MediaUIAttachmentVideoView.swift index 4e6d17dc..a0786d72 100644 --- a/Packages/MediaUI/Sources/MediaUI/MediaUIAttachmentVideoView.swift +++ b/Packages/MediaUI/Sources/MediaUI/MediaUIAttachmentVideoView.swift @@ -60,6 +60,12 @@ import SwiftUI isPlaying = true player?.play() } + + func preventSleep(_ preventSleep: Bool) { + #if !os(visionOS) + player?.preventsDisplaySleepDuringVideoPlayback = preventSleep + #endif + } deinit { NotificationCenter.default.removeObserver(self, name: .AVPlayerItemDidPlayToEndTime, object: nil) @@ -114,6 +120,7 @@ public struct MediaUIAttachmentVideoView: View { try? AVAudioSession.sharedInstance().setCategory(.playback, options: .duckOthers) try? AVAudioSession.sharedInstance().setActive(true) } + viewModel.preventSleep(true) viewModel.mute(false) DispatchQueue.main.asyncAfter(deadline: .now() + 0.3) { if isCompact || !preferences.autoPlayVideo { @@ -127,6 +134,7 @@ public struct MediaUIAttachmentVideoView: View { if isCompact || !preferences.autoPlayVideo { viewModel.pause() } + viewModel.preventSleep(false) viewModel.mute(preferences.muteVideo) DispatchQueue.global().async { try? AVAudioSession.sharedInstance().setActive(false, options: .notifyOthersOnDeactivation) diff --git a/Packages/StatusKit/Sources/StatusKit/Row/Subviews/StatusRowActionsView.swift b/Packages/StatusKit/Sources/StatusKit/Row/Subviews/StatusRowActionsView.swift index 4b532db1..28ffa247 100644 --- a/Packages/StatusKit/Sources/StatusKit/Row/Subviews/StatusRowActionsView.swift +++ b/Packages/StatusKit/Sources/StatusKit/Row/Subviews/StatusRowActionsView.swift @@ -213,8 +213,7 @@ struct StatusRowActionsView: View { if !isNarrow, let count = action.count(dataController: statusDataController, isFocused: isFocused, - theme: theme), !viewModel.isRemote, - count > 0 + theme: theme), !viewModel.isRemote { Text(count, format: .number.notation(.compactName)) .lineLimit(1) @@ -223,6 +222,7 @@ struct StatusRowActionsView: View { .foregroundColor(Color(UIColor.secondaryLabel)) .font(.scaledFootnote) .monospacedDigit() + .opacity(count > 0 ? 1 : 0) } } .padding(.vertical, 6)