mirror of
git://jb55.com/damus
synced 2024-09-29 16:30:44 +00:00
Improve SwiftUI previews around full-screen carousel
This is a minor SwiftUI preview improvement Signed-off-by: Daniel D’Aquino <daniel@daquino.me> Link: 20240318222048.14226-5-daniel@daquino.me Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
parent
250efd9755
commit
181d894df0
@ -130,19 +130,42 @@ struct FullScreenCarouselView<Content: View>: View {
|
||||
}
|
||||
}
|
||||
|
||||
fileprivate struct ImageViewPreview: View {
|
||||
fileprivate struct FullScreenCarouselPreviewView<Content: View>: View {
|
||||
@State var selectedIndex: Int = 0
|
||||
let url: MediaUrl = .image(URL(string: "https://jb55.com/red-me.jpg")!)
|
||||
let test_video_url: MediaUrl = .video(URL(string: "http://cdn.jb55.com/s/zaps-build.mp4")!)
|
||||
let custom_content: (() -> Content)?
|
||||
|
||||
init(content: (() -> Content)? = nil) {
|
||||
self.custom_content = content
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
FullScreenCarouselView<AnyView>(video_controller: test_damus_state.video, urls: [test_video_url, url], settings: test_damus_state.settings, selectedIndex: $selectedIndex)
|
||||
FullScreenCarouselView(video_controller: test_damus_state.video, urls: [test_video_url, url], settings: test_damus_state.settings, selectedIndex: $selectedIndex) {
|
||||
self.custom_content?()
|
||||
}
|
||||
.environmentObject(OrientationTracker())
|
||||
}
|
||||
}
|
||||
|
||||
struct ImageView_Previews: PreviewProvider {
|
||||
struct FullScreenCarouselView_Previews: PreviewProvider {
|
||||
static var previews: some View {
|
||||
ImageViewPreview()
|
||||
Group {
|
||||
FullScreenCarouselPreviewView<AnyView>()
|
||||
.previewDisplayName("No custom content on overlay")
|
||||
|
||||
FullScreenCarouselPreviewView(content: {
|
||||
HStack {
|
||||
Spacer()
|
||||
|
||||
Text("Some content")
|
||||
.padding()
|
||||
.foregroundColor(.white)
|
||||
|
||||
Spacer()
|
||||
}.background(.ultraThinMaterial)
|
||||
})
|
||||
.previewDisplayName("Custom content on overlay")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user