Fixes compile issue with AutoCapitalization on Xcode 14.2 and below

This commit is contained in:
Jerrod Putman 2023-05-17 11:08:37 -07:00
parent cbf0a6d831
commit bfdb0d3bac
1 changed files with 17 additions and 15 deletions

View File

@ -26,7 +26,20 @@ public extension Backport where Wrapped: View {
func textInputAutocapitalization(_ autocapitalization: Backport<Any>.TextInputAutocapitalization?) -> some View {
Group {
if #available(iOS 16, *) {
var type: SwiftUI.TextInputAutocapitalization {
wrapped.textInputAutocapitalization(textInputAutocapitalizationType(autocapitalization))
} else {
wrapped.modifier(
AutoCapitalizationModifier(
capitalization: autocapitalization?.capitalization ?? .none
)
)
}
}
.environment(\.textInputAutocapitalization, autocapitalization)
}
@available(iOS 16.0, *)
private func textInputAutocapitalizationType(_ autocapitalization: Backport<Any>.TextInputAutocapitalization?) -> SwiftUI.TextInputAutocapitalization {
switch autocapitalization {
case .none:
return .sentences
@ -40,17 +53,6 @@ public extension Backport where Wrapped: View {
}
}
}
wrapped.textInputAutocapitalization(type)
} else {
wrapped.modifier(
AutoCapitalizationModifier(
capitalization: autocapitalization?.capitalization ?? .none
)
)
}
}
.environment(\.textInputAutocapitalization, autocapitalization)
}
}
@available(iOS, deprecated: 15)