From 689ad5465abea12ac982318fb0210a1c89f3a066 Mon Sep 17 00:00:00 2001 From: Mustafa Merza <mustafa.merza95@gmail.com> Date: Wed, 14 Aug 2024 10:23:54 +0300 Subject: [PATCH] - Added detents parameter for iOS 15 devices. --- MiniScanner/Extensions/View/Sheet/View+CustomSheet.swift | 5 ++++- .../Features/Settings/Presentation/SettingsView.swift | 4 ++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/MiniScanner/Extensions/View/Sheet/View+CustomSheet.swift b/MiniScanner/Extensions/View/Sheet/View+CustomSheet.swift index 8e1f651..b007219 100644 --- a/MiniScanner/Extensions/View/Sheet/View+CustomSheet.swift +++ b/MiniScanner/Extensions/View/Sheet/View+CustomSheet.swift @@ -13,6 +13,7 @@ struct CustomSheetModifier<SheetContent: View>: ViewModifier { var isPresented: Binding<Bool> var dismissable: Bool = true var height: CGFloat + var detents: [BottomSheet.Detent] @ViewBuilder var sheetContent: () -> SheetContent func body(content: Content) -> some View { @@ -40,6 +41,7 @@ struct CustomSheetModifier<SheetContent: View>: ViewModifier { content .bottomSheet(isPresented: isPresented, + detents: detents, shouldScrollExpandSheet: true, showGrabber: false, showNavigationBar: true, @@ -53,8 +55,9 @@ extension View { func customSheet<Content: View>(isPresented: Binding<Bool>, dismissable: Bool = true, height: CGFloat, + detents: [BottomSheet.Detent], @ViewBuilder content: @escaping () -> Content) -> some View { - ModifiedContent(content: self, modifier: CustomSheetModifier(isPresented: isPresented, dismissable: dismissable, height: height, sheetContent: content)) + ModifiedContent(content: self, modifier: CustomSheetModifier(isPresented: isPresented, dismissable: dismissable, height: height, detents: detents, sheetContent: content)) } } diff --git a/MiniScanner/Features/Settings/Presentation/SettingsView.swift b/MiniScanner/Features/Settings/Presentation/SettingsView.swift index eff78c4..3150944 100644 --- a/MiniScanner/Features/Settings/Presentation/SettingsView.swift +++ b/MiniScanner/Features/Settings/Presentation/SettingsView.swift @@ -33,24 +33,28 @@ struct SettingsView: View { .environment(\.layoutDirection, viewModel.layoutDirection) .customSheet(isPresented: $viewModel.isLanguageSettingSheetPresented, height: viewModel.sheetSize.height, + detents: [.medium], content: { languageSheet .readSize(size: $viewModel.sheetSize) }) .customSheet(isPresented: $viewModel.isColorSchemeSettingSheetPresented, height: viewModel.sheetSize.height, + detents: [.medium], content : { colorSchemeSheet .readSize(size: $viewModel.sheetSize) }) .customSheet(isPresented: $viewModel.isFileTypeSettingSheetPresented, height: viewModel.sheetSize.height, + detents: [.medium], content : { fileTypeSheet .readSize(size: $viewModel.sheetSize) }) .customSheet(isPresented: $viewModel.isScreenSettingSheetPresented, height: viewModel.sheetSize.height, + detents: [.medium], content : { screenSheet .readSize(size: $viewModel.sheetSize) -- GitLab