mirror of
https://github.com/yattee/yattee.git
synced 2025-11-16 15:08:43 +00:00
- Run SwiftFormat to fix indentation, spacing, and formatting issues - Replace CGFloat with Double and NSRect with CGRect per style guide - Remove redundant .center alignment specifications - Remove unnecessary @available checks for satisfied deployment targets - Fix closure brace indentation for consistency - Disable closure_end_indentation rule to resolve SwiftFormat conflict All linting checks now pass with zero errors and warnings.
43 lines
1.3 KiB
Swift
43 lines
1.3 KiB
Swift
import Defaults
|
|
import SwiftUI
|
|
|
|
struct VideoDetailsOverlay: View {
|
|
@ObservedObject private var controls = PlayerControlsModel.shared
|
|
|
|
var body: some View {
|
|
VideoDetails(video: controls.player.videoForDisplay, fullScreen: fullScreenBinding, sidebarQueue: .constant(false))
|
|
.clipShape(RoundedRectangle(cornerRadius: 4))
|
|
.padding(.leading, overlayLeadingPadding)
|
|
.id(controls.player.currentVideo?.cacheKey)
|
|
}
|
|
|
|
var fullScreenBinding: Binding<Bool> {
|
|
.init(get: {
|
|
controls.presentingDetailsOverlay
|
|
}, set: { newValue in
|
|
controls.presentingDetailsOverlay = newValue
|
|
})
|
|
}
|
|
|
|
#if os(iOS)
|
|
private var overlayLeadingPadding: Double {
|
|
// On iPad in non-fullscreen mode, add left padding for system controls
|
|
if Constants.isIPad && !Constants.isWindowFullscreen {
|
|
return Constants.iPadSystemControlsWidth + 15
|
|
}
|
|
return 0
|
|
}
|
|
#else
|
|
private var overlayLeadingPadding: Double {
|
|
return 0
|
|
}
|
|
#endif
|
|
}
|
|
|
|
struct VideoDetailsOverlay_Previews: PreviewProvider {
|
|
static var previews: some View {
|
|
VideoDetailsOverlay()
|
|
.injectFixtureEnvironmentObjects()
|
|
}
|
|
}
|