From 8a2dbc95ca24fa7e786a72a7eb978453d94f4323 Mon Sep 17 00:00:00 2001 From: Swift Coder Date: Wed, 23 Oct 2024 11:13:27 -0400 Subject: [PATCH 1/2] Fix: dismiss button in full screen carousel This updates the dismiss button on the fullscreen carousel so that it is more visible in some scenarios. Changelog-Fixed: Fix dismiss button visibility Signed-off-by: Swift Coder --- .../Views/Images/FullScreenCarouselView.swift | 2 +- damus/Views/Images/ProfilePicImageView.swift | 19 +++++++++++++------ 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/damus/Views/Images/FullScreenCarouselView.swift b/damus/Views/Images/FullScreenCarouselView.swift index c24e873b..a6b6b3d4 100644 --- a/damus/Views/Images/FullScreenCarouselView.swift +++ b/damus/Views/Images/FullScreenCarouselView.swift @@ -96,7 +96,7 @@ struct FullScreenCarouselView: View { GeometryReader { geo in VStack { if showMenu { - NavDismissBarView(showBackgroundCircle: false) + NavDismissBarView(navDismissBarContainer: .fullScreenCarousel) .foregroundColor(.white) Spacer() diff --git a/damus/Views/Images/ProfilePicImageView.swift b/damus/Views/Images/ProfilePicImageView.swift index 987cc7c6..8b7906aa 100644 --- a/damus/Views/Images/ProfilePicImageView.swift +++ b/damus/Views/Images/ProfilePicImageView.swift @@ -40,13 +40,18 @@ struct ProfileImageContainerView: View { } } +enum NavDismissBarContainer { + case fullScreenCarousel + case profilePicImageView +} + struct NavDismissBarView: View { @Environment(\.presentationMode) var presentationMode - let showBackgroundCircle: Bool + let navDismissBarContainer: NavDismissBarContainer - init(showBackgroundCircle: Bool = true) { - self.showBackgroundCircle = showBackgroundCircle + init(navDismissBarContainer: NavDismissBarContainer) { + self.navDismissBarContainer = navDismissBarContainer } var body: some View { @@ -54,15 +59,17 @@ struct NavDismissBarView: View { Button(action: { presentationMode.wrappedValue.dismiss() }, label: { - if showBackgroundCircle { + if case .profilePicImageView = navDismissBarContainer { Image("close") .frame(width: 33, height: 33) .background(.regularMaterial) .clipShape(Circle()) } - else { + else if case .fullScreenCarousel = navDismissBarContainer { Image("close") .frame(width: 33, height: 33) + .background(.damusBlack) + .clipShape(Circle()) } }) @@ -96,7 +103,7 @@ struct ProfilePicImageView: View { presentationMode.wrappedValue.dismiss() })) } - .overlay(NavDismissBarView(), alignment: .top) + .overlay(NavDismissBarView(navDismissBarContainer: .profilePicImageView), alignment: .top) } } From d94b387fb9c32097dde4237031c71a8570160d2d Mon Sep 17 00:00:00 2001 From: Swift Coder Date: Fri, 25 Oct 2024 16:17:17 -0400 Subject: [PATCH 2/2] Address PR Feedback Use Switch statement to address all cases instead of if-else Signed-off-by: Swift Coder --- damus/Views/Images/ProfilePicImageView.swift | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/damus/Views/Images/ProfilePicImageView.swift b/damus/Views/Images/ProfilePicImageView.swift index 8b7906aa..1f3d6c65 100644 --- a/damus/Views/Images/ProfilePicImageView.swift +++ b/damus/Views/Images/ProfilePicImageView.swift @@ -59,13 +59,14 @@ struct NavDismissBarView: View { Button(action: { presentationMode.wrappedValue.dismiss() }, label: { - if case .profilePicImageView = navDismissBarContainer { + switch navDismissBarContainer { + case .profilePicImageView: Image("close") .frame(width: 33, height: 33) .background(.regularMaterial) .clipShape(Circle()) - } - else if case .fullScreenCarousel = navDismissBarContainer { + + case .fullScreenCarousel: Image("close") .frame(width: 33, height: 33) .background(.damusBlack)