diff --git a/MiniScanner/Extensions/View/Sheet/View+CustomSheet.swift b/MiniScanner/Extensions/View/Sheet/View+CustomSheet.swift index 8e1f651571e37c635b34783abc076bd061eb24b0..b0072192fc15d132fe8340f9c22ca7df6004bac9 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 eff78c4f68792f66932951617d2b71834cf0427e..315094405f7f049c99356eec1e5dffc6b3b7234b 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)