From cc1682ec634ed3ed8639606f5d35274b20eb1624 Mon Sep 17 00:00:00 2001 From: Kyle Date: Tue, 9 Jun 2026 14:30:42 +0800 Subject: [PATCH 1/3] Add NSTextAlignment header --- .../Shims/UIFoundation/NSText.h | 26 ++++++++++++++++++- .../Shims/UIFoundation/UIFoundationHelper.h | 21 +++++++++++++++ 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h diff --git a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSText.h b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSText.h index 165a2aa12..805dc5eb7 100644 --- a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSText.h +++ b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSText.h @@ -8,7 +8,7 @@ #if OPENSWIFTUI_TARGET_OS_DARWIN -// Modified based on macOS 15.5 SDK +// Modified based on macOS 27.0 SDK /* NSText.h @@ -18,6 +18,7 @@ */ #import +#import "UIFoundationHelper.h" NS_HEADER_AUDIT_BEGIN(nullability, sendability) @@ -31,6 +32,29 @@ typedef NS_ENUM(NSInteger, NSWritingDirection) { } API_AVAILABLE(macos(10.0), ios(6.0), watchos(2.0), tvos(9.0), visionos(1.0)); #endif // !__NSWRITING_DIRECTION_SHARED_SECTION__ +#if !__NSTEXT_ALIGNMENT_SHARED_SECTION__ +#define __NSTEXT_ALIGNMENT_SHARED_SECTION__ 1 +#pragma mark NSTextAlignment +typedef NS_ENUM(NSInteger, NSTextAlignment) { + NSTextAlignmentLeft = 0, // Visually left aligned +#if TARGET_ABI_USES_IOS_VALUES + NSTextAlignmentCenter = 1, // Visually centered + NSTextAlignmentRight = 2, // Visually right aligned +#else /* !TARGET_ABI_USES_IOS_VALUES */ + NSTextAlignmentRight = 1, // Visually right aligned + NSTextAlignmentCenter = 2, // Visually centered +#endif + NSTextAlignmentJustified = 3, // Fully-justified. The last line in a paragraph is natural-aligned. + + /// Resolved to either ``left`` or ``right`` based on the natural alignment resolution type active in the associated component. + /// + /// There are two types of natural alignment resolution behavior. The natural alignment is resolved based on either the UI language or the base writing direction. + /// The behavior is selected by the ``resolvesNaturalAlignmentWithBaseWritingDirection`` property for ``NSTextLayoutManager``. + /// ``NSStringDrawingOptions.resolvesNaturalAlignmentWithBaseWritingDirection`` specifies the base writing direction based resolution for ``NSStringDrawing``. + NSTextAlignmentNatural = 4 +} API_AVAILABLE(macos(10.0), ios(6.0), watchos(2.0), tvos(9.0), visionos(1.0)); +#endif // !__NSTEXT_ALIGNMENT_SHARED_SECTION__ + NS_HEADER_AUDIT_END(nullability, sendability) #endif diff --git a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h new file mode 100644 index 000000000..6ef856875 --- /dev/null +++ b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h @@ -0,0 +1,21 @@ +// +// UIFoundationHelper.h +// OpenSwiftUI_SPI + +#pragma once + +#import "OpenSwiftUIBase.h" + +#if OPENSWIFTUI_TARGET_OS_DARWIN + +#if (defined(__IPHONE_27_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_27_0) || \ + (defined(__MAC_27_0) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_27_0) || \ + (defined(__TV_27_0) && __TV_OS_VERSION_MAX_ALLOWED >= __TV_27_0) || \ + (defined(__WATCH_27_0) && __WATCH_OS_VERSION_MAX_ALLOWED >= __WATCH_27_0) || \ + (defined(__VISIONOS_27_0) && __VISION_OS_VERSION_MAX_ALLOWED >= __VISIONOS_27_0) +#define OPENSWIFTUI_UIFOUNDATION_HAS_SDK_27_ADDITIONS 1 +#else +#define OPENSWIFTUI_UIFOUNDATION_HAS_SDK_27_ADDITIONS 0 +#endif + +#endif /* OPENSWIFTUI_TARGET_OS_DARWIN */ From 714a858d5f7e29986098030447240a38f9433a3c Mon Sep 17 00:00:00 2001 From: Kyle Date: Tue, 9 Jun 2026 14:52:34 +0800 Subject: [PATCH 2/3] Add OPENSWIFTUI_UIFOUNDATION_HAS_SDK_26_ADDITIONS --- .../OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h | 7 ++----- .../Shims/UIFoundation/UIFoundationHelper.h | 9 +++++++++ 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h index 021c61cee..369aac141 100644 --- a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h +++ b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h @@ -18,6 +18,7 @@ // #import +#import "UIFoundationHelper.h" @class NSAttributedString; @class NSString; @class NSStringDrawingContext; @@ -57,11 +58,7 @@ typedef NS_OPTIONS(NSInteger, NSStringDrawingOptions) { NSStringDrawingUsesFontLeading = 1 << 1, // Uses the font leading for calculating line heights NSStringDrawingUsesDeviceMetrics = 1 << 3, // Uses image glyph bounds instead of typographic bounds NSStringDrawingTruncatesLastVisibleLine API_AVAILABLE(macos(10.5), ios(6.0), tvos(9.0), watchos(2.0), visionos(1.0)) = 1 << 5, // Truncates and adds the ellipsis character to the last visible line if the text doesn't fit into the bounds specified. Ignored if NSStringDrawingUsesLineFragmentOrigin is not also set. - // Check if Xcode 26.0 related platform SDKs are available - #if (defined(__IPHONE_26_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_26_0) || \ - (defined(__MAC_26_0) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_26_0) || \ - (defined(__TV_26_0) && __TV_OS_VERSION_MAX_ALLOWED >= __TV_26_0) || \ - (defined(__WATCH_26_0) && __WATCH_OS_VERSION_MAX_ALLOWED >= __WATCH_26_0) + #if OPENSWIFTUI_UIFOUNDATION_HAS_SDK_26_ADDITIONS /// Specifies the behavior for resolving ``NSTextAlignment.natural`` to the visual alignment. /// /// When set, the resolved visual alignment is determined by the resolved base writing direction; otherwise, it is using the user’s preferred language. diff --git a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h index 6ef856875..aa1f36e3a 100644 --- a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h +++ b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h @@ -8,6 +8,15 @@ #if OPENSWIFTUI_TARGET_OS_DARWIN +#if (defined(__IPHONE_26_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_26_0) || \ + (defined(__MAC_26_0) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_26_0) || \ + (defined(__TV_26_0) && __TV_OS_VERSION_MAX_ALLOWED >= __TV_26_0) || \ + (defined(__WATCH_26_0) && __WATCH_OS_VERSION_MAX_ALLOWED >= __WATCH_26_0) +#define OPENSWIFTUI_UIFOUNDATION_HAS_SDK_26_ADDITIONS 1 +#else +#define OPENSWIFTUI_UIFOUNDATION_HAS_SDK_26_ADDITIONS 0 +#endif + #if (defined(__IPHONE_27_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_27_0) || \ (defined(__MAC_27_0) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_27_0) || \ (defined(__TV_27_0) && __TV_OS_VERSION_MAX_ALLOWED >= __TV_27_0) || \ From 2d05a6e9f0efd761d8c99ef0d5c5c102196c6a69 Mon Sep 17 00:00:00 2001 From: Kyle Date: Tue, 9 Jun 2026 15:13:11 +0800 Subject: [PATCH 3/3] Update UIFoundation SDK addition guards --- Sources/OpenSwiftUI_SPI/OpenSwiftUIBase.h | 24 ++++++++++++++ .../Shims/UIFoundation/NSParagraphStyle.h | 32 ++++++++++++++++++- .../Shims/UIFoundation/NSStringDrawing.h | 3 +- .../Shims/UIFoundation/NSText.h | 1 - .../Shims/UIFoundation/UIFoundationHelper.h | 30 ----------------- 5 files changed, 56 insertions(+), 34 deletions(-) delete mode 100644 Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h diff --git a/Sources/OpenSwiftUI_SPI/OpenSwiftUIBase.h b/Sources/OpenSwiftUI_SPI/OpenSwiftUIBase.h index 696e4a892..53bef6e69 100644 --- a/Sources/OpenSwiftUI_SPI/OpenSwiftUIBase.h +++ b/Sources/OpenSwiftUI_SPI/OpenSwiftUIBase.h @@ -14,6 +14,30 @@ #include #include "OpenSwiftUITargetConditionals.h" +#if OPENSWIFTUI_TARGET_OS_DARWIN +#if (defined(__IPHONE_26_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_26_0) || \ + (defined(__MAC_26_0) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_26_0) || \ + (defined(__TV_26_0) && __TV_OS_VERSION_MAX_ALLOWED >= __TV_26_0) || \ + (defined(__WATCH_26_0) && __WATCH_OS_VERSION_MAX_ALLOWED >= __WATCH_26_0) +#define OPENSWIFTUI_HAS_SDK_26_ADDITIONS 1 +#else +#define OPENSWIFTUI_HAS_SDK_26_ADDITIONS 0 +#endif + +#if (defined(__IPHONE_27_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_27_0) || \ + (defined(__MAC_27_0) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_27_0) || \ + (defined(__TV_27_0) && __TV_OS_VERSION_MAX_ALLOWED >= __TV_27_0) || \ + (defined(__WATCH_27_0) && __WATCH_OS_VERSION_MAX_ALLOWED >= __WATCH_27_0) || \ + (defined(__VISIONOS_27_0) && __VISION_OS_VERSION_MAX_ALLOWED >= __VISIONOS_27_0) +#define OPENSWIFTUI_HAS_SDK_27_ADDITIONS 1 +#else +#define OPENSWIFTUI_HAS_SDK_27_ADDITIONS 0 +#endif +#else +#define OPENSWIFTUI_HAS_SDK_26_ADDITIONS 0 +#define OPENSWIFTUI_HAS_SDK_27_ADDITIONS 0 +#endif + #if defined(__cplusplus) #define OPENSWIFTUI_INLINE inline #else diff --git a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSParagraphStyle.h b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSParagraphStyle.h index 9ee221e13..b7c060b95 100644 --- a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSParagraphStyle.h +++ b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSParagraphStyle.h @@ -8,7 +8,7 @@ #if OPENSWIFTUI_TARGET_OS_DARWIN -// Modified based on iOS 18.5 SDK +// Modified based on iOS 18.5 SDK and macOS 27.0 SDK // NSParagraphStyle.h // UIKit @@ -22,6 +22,7 @@ #import "NSText.h" @class NSTextList; +@class NSTextBlock; NS_HEADER_AUDIT_BEGIN(nullability, sendability) @@ -75,6 +76,11 @@ OPENSWIFTUI_EXPORT API_AVAILABLE(macos(10.0), ios(7.0), tvos(9.0), watchos(2.0), + (NSCharacterSet *)columnTerminatorsForLocale:(nullable NSLocale *)aLocale API_AVAILABLE(macos(10.11), ios(7.0), tvos(9.0), watchos(2.0), visionos(1.0)); // Returns the column terminators for locale. Passing nil returns an instance corresponding to +[NSLocale systemLocale]. For matching user's formatting preferences, pass +[NSLocale currentLocale]. Can be used as the value for NSTabColumnTerminatorsAttributeName to make a decimal tab stop. +#if OPENSWIFTUI_HAS_SDK_27_ADDITIONS +- (instancetype)initWithTextAlignment:(NSTextAlignment)alignment location:(CGFloat)loc options:(NSDictionary *)options NS_DESIGNATED_INITIALIZER; // Initializes a text tab with the text alignment, location, and options. The text alignment is used to determine the position of text inside the tab column. + +@property (readonly, NS_NONATOMIC_IOSONLY) NSTextAlignment alignment; // Defines the alignment of tab column contents. +#endif @property (readonly, NS_NONATOMIC_IOSONLY) CGFloat location; // Location of the tab stop inside the line fragment rect coordinate system @property (readonly, NS_NONATOMIC_IOSONLY) NSDictionary *options; // Optional configuration attributes @end @@ -84,6 +90,10 @@ OPENSWIFTUI_EXPORT API_AVAILABLE(macos(10.0), ios(7.0), tvos(9.0), watchos(2.0), OPENSWIFTUI_EXPORT API_AVAILABLE(macos(10.0), ios(6.0), tvos(9.0), watchos(2.0), visionos(1.0)) @interface NSParagraphStyle : NSObject +#if OPENSWIFTUI_HAS_SDK_27_ADDITIONS +@property (readonly, NS_NONATOMIC_IOSONLY) NSTextAlignment alignment; + +#endif @property (class, readonly, copy, NS_NONATOMIC_IOSONLY) NSParagraphStyle *defaultParagraphStyle; // This class property returns a shared and cached NSParagraphStyle instance with the default style settings, with same value as the result of [[NSParagraphStyle alloc] init]. + (NSWritingDirection)defaultWritingDirectionForLanguage:(nullable NSString *)languageName; // languageName is in ISO lang region format @@ -118,16 +128,28 @@ OPENSWIFTUI_EXPORT API_AVAILABLE(macos(10.0), ios(6.0), tvos(9.0), watchos(2.0), @property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray *textLists API_AVAILABLE(macos(10.0), ios(7.0), tvos(9.0), watchos(2.0), visionos(1.0)); // Array to specify the text lists containing the paragraph, nested from outermost to innermost. +#if OPENSWIFTUI_HAS_SDK_27_ADDITIONS +@property (readonly, copy, NS_NONATOMIC_IOSONLY) NSArray<__kindof NSTextBlock *> *textBlocks API_AVAILABLE(macos(10.0), ios(6.0), tvos(9.0), visionos(1.0), watchos(2.0)); // Array to specify the text blocks containing the paragraph, nested from outermost to innermost. + +#endif @property (readonly, NS_NONATOMIC_IOSONLY) BOOL allowsDefaultTighteningForTruncation API_AVAILABLE(macos(10.11), ios(9.0), tvos(9.0), watchos(2.0), visionos(1.0)); // Tightens inter-character spacing in attempt to fit lines wider than the available space if the line break mode is one of the truncation modes before starting to truncate. NO by default. The maximum amount of tightening performed is determined by the system based on contexts such as font, line width, etc. @property (readonly, NS_NONATOMIC_IOSONLY) NSLineBreakStrategy lineBreakStrategy API_AVAILABLE(macos(10.11), ios(9.0), tvos(9.0), watchos(2.0), visionos(1.0)); // Specifies the line break strategies that may be used for laying out the paragraph. The default value is NSLineBreakStrategyNone. +#if OPENSWIFTUI_HAS_SDK_27_ADDITIONS && OPENSWIFTUI_TARGET_OS_OSX +@property (readonly) float tighteningFactorForTruncation; // Specifies the threshold for using tightening as an alternative to truncation when -allowsDefaultTighteningForTruncation=NO. +@property (readonly) NSInteger headerLevel; // Specifies whether the paragraph is to be treated as a header for purposes of HTML generation. +#endif + @end OPENSWIFTUI_EXPORT API_AVAILABLE(macos(10.0), ios(6.0), tvos(9.0), watchos(2.0), visionos(1.0)) @interface NSMutableParagraphStyle : NSParagraphStyle +#if OPENSWIFTUI_HAS_SDK_27_ADDITIONS +@property (NS_NONATOMIC_IOSONLY) NSTextAlignment alignment; +#endif @property (NS_NONATOMIC_IOSONLY) CGFloat lineSpacing; @property (NS_NONATOMIC_IOSONLY) CGFloat paragraphSpacing; @property (NS_NONATOMIC_IOSONLY) CGFloat firstLineHeadIndent; @@ -146,12 +168,20 @@ OPENSWIFTUI_EXPORT API_AVAILABLE(macos(10.0), ios(6.0), tvos(9.0), watchos(2.0), @property (NS_NONATOMIC_IOSONLY) BOOL allowsDefaultTighteningForTruncation API_AVAILABLE(macos(10.11), ios(9.0), tvos(9.0), watchos(2.0), visionos(1.0)); @property (NS_NONATOMIC_IOSONLY) NSLineBreakStrategy lineBreakStrategy API_AVAILABLE(macos(10.11), ios(9.0), tvos(9.0), watchos(2.0), visionos(1.0)); @property (NS_NONATOMIC_IOSONLY, copy) NSArray *textLists API_AVAILABLE(macos(10.0), ios(7.0), tvos(9.0), watchos(2.0), visionos(1.0)); +#if OPENSWIFTUI_HAS_SDK_27_ADDITIONS +@property (copy, NS_NONATOMIC_IOSONLY) NSArray<__kindof NSTextBlock *> *textBlocks API_AVAILABLE(macos(10.0), ios(6.0), tvos(9.0), visionos(1.0), watchos(2.0)); +#endif - (void)addTabStop:(NSTextTab *)anObject API_AVAILABLE(macos(10.0), ios(9.0), tvos(9.0), watchos(2.0), visionos(1.0)); - (void)removeTabStop:(NSTextTab *)anObject API_AVAILABLE(macos(10.0), ios(9.0), tvos(9.0), watchos(2.0), visionos(1.0)); - (void)setParagraphStyle:(NSParagraphStyle *)obj API_AVAILABLE(macos(10.0), ios(9.0), tvos(9.0), watchos(2.0), visionos(1.0)); +#if OPENSWIFTUI_HAS_SDK_27_ADDITIONS && OPENSWIFTUI_TARGET_OS_OSX +@property float tighteningFactorForTruncation; +@property NSInteger headerLevel; +#endif + @end NS_HEADER_AUDIT_END(nullability, sendability) diff --git a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h index 369aac141..b0512c06a 100644 --- a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h +++ b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSStringDrawing.h @@ -18,7 +18,6 @@ // #import -#import "UIFoundationHelper.h" @class NSAttributedString; @class NSString; @class NSStringDrawingContext; @@ -58,7 +57,7 @@ typedef NS_OPTIONS(NSInteger, NSStringDrawingOptions) { NSStringDrawingUsesFontLeading = 1 << 1, // Uses the font leading for calculating line heights NSStringDrawingUsesDeviceMetrics = 1 << 3, // Uses image glyph bounds instead of typographic bounds NSStringDrawingTruncatesLastVisibleLine API_AVAILABLE(macos(10.5), ios(6.0), tvos(9.0), watchos(2.0), visionos(1.0)) = 1 << 5, // Truncates and adds the ellipsis character to the last visible line if the text doesn't fit into the bounds specified. Ignored if NSStringDrawingUsesLineFragmentOrigin is not also set. - #if OPENSWIFTUI_UIFOUNDATION_HAS_SDK_26_ADDITIONS + #if OPENSWIFTUI_HAS_SDK_26_ADDITIONS /// Specifies the behavior for resolving ``NSTextAlignment.natural`` to the visual alignment. /// /// When set, the resolved visual alignment is determined by the resolved base writing direction; otherwise, it is using the user’s preferred language. diff --git a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSText.h b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSText.h index 805dc5eb7..bdc882db4 100644 --- a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSText.h +++ b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/NSText.h @@ -18,7 +18,6 @@ */ #import -#import "UIFoundationHelper.h" NS_HEADER_AUDIT_BEGIN(nullability, sendability) diff --git a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h b/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h deleted file mode 100644 index aa1f36e3a..000000000 --- a/Sources/OpenSwiftUI_SPI/Shims/UIFoundation/UIFoundationHelper.h +++ /dev/null @@ -1,30 +0,0 @@ -// -// UIFoundationHelper.h -// OpenSwiftUI_SPI - -#pragma once - -#import "OpenSwiftUIBase.h" - -#if OPENSWIFTUI_TARGET_OS_DARWIN - -#if (defined(__IPHONE_26_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_26_0) || \ - (defined(__MAC_26_0) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_26_0) || \ - (defined(__TV_26_0) && __TV_OS_VERSION_MAX_ALLOWED >= __TV_26_0) || \ - (defined(__WATCH_26_0) && __WATCH_OS_VERSION_MAX_ALLOWED >= __WATCH_26_0) -#define OPENSWIFTUI_UIFOUNDATION_HAS_SDK_26_ADDITIONS 1 -#else -#define OPENSWIFTUI_UIFOUNDATION_HAS_SDK_26_ADDITIONS 0 -#endif - -#if (defined(__IPHONE_27_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_27_0) || \ - (defined(__MAC_27_0) && __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_27_0) || \ - (defined(__TV_27_0) && __TV_OS_VERSION_MAX_ALLOWED >= __TV_27_0) || \ - (defined(__WATCH_27_0) && __WATCH_OS_VERSION_MAX_ALLOWED >= __WATCH_27_0) || \ - (defined(__VISIONOS_27_0) && __VISION_OS_VERSION_MAX_ALLOWED >= __VISIONOS_27_0) -#define OPENSWIFTUI_UIFOUNDATION_HAS_SDK_27_ADDITIONS 1 -#else -#define OPENSWIFTUI_UIFOUNDATION_HAS_SDK_27_ADDITIONS 0 -#endif - -#endif /* OPENSWIFTUI_TARGET_OS_DARWIN */