-
Notifications
You must be signed in to change notification settings - Fork 514
UIKit iOS xcode16.0 b4
Rolf Bjarne Kvinge edited this page Aug 28, 2024
·
3 revisions
#UIKit.framework https://github.com/xamarin/xamarin-macios/pull/21130
diff -ruN /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGeometry.h /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGeometry.h
--- /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGeometry.h 2024-06-30 15:24:42
+++ /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIGeometry.h 2024-07-13 14:23:29
@@ -64,7 +64,7 @@
UIAxisHorizontal = 1 << 0,
UIAxisVertical = 1 << 1,
UIAxisBoth = (UIAxisHorizontal | UIAxisVertical),
-} API_AVAILABLE(ios(13.4), tvos(13.4)) API_UNAVAILABLE(watchos);
+} API_AVAILABLE(ios(13.4), tvos(13.4), watchos(6.2));
#ifdef FOUNDATION_HAS_DIRECTIONAL_GEOMETRY
@@ -198,12 +198,12 @@
@interface NSValue (NSValueUIGeometryExtensions)
-+ (NSValue *)valueWithCGPoint:(CGPoint)point API_UNAVAILABLE(watchos);
-+ (NSValue *)valueWithCGVector:(CGVector)vector API_UNAVAILABLE(watchos);
-+ (NSValue *)valueWithCGSize:(CGSize)size API_UNAVAILABLE(watchos);
-+ (NSValue *)valueWithCGRect:(CGRect)rect API_UNAVAILABLE(watchos);
-+ (NSValue *)valueWithCGAffineTransform:(CGAffineTransform)transform API_UNAVAILABLE(watchos);
-+ (NSValue *)valueWithUIEdgeInsets:(UIEdgeInsets)insets API_UNAVAILABLE(watchos);
++ (NSValue *)valueWithCGPoint:(CGPoint)point API_AVAILABLE(watchos(2.0));
++ (NSValue *)valueWithCGVector:(CGVector)vector API_AVAILABLE(watchos(2.0));
++ (NSValue *)valueWithCGSize:(CGSize)size API_AVAILABLE(watchos(2.0));
++ (NSValue *)valueWithCGRect:(CGRect)rect API_AVAILABLE(watchos(2.0));
++ (NSValue *)valueWithCGAffineTransform:(CGAffineTransform)transform API_AVAILABLE(watchos(2.0));
++ (NSValue *)valueWithUIEdgeInsets:(UIEdgeInsets)insets API_AVAILABLE(watchos(2.0));
#ifndef FOUNDATION_HAS_DIRECTIONAL_GEOMETRY
#if UIKIT_HAS_UIFOUNDATION_SYMBOLS
+ (NSValue *)valueWithDirectionalEdgeInsets:(NSDirectionalEdgeInsets)insets API_AVAILABLE(ios(11.0),tvos(11.0),watchos(4.0));
@@ -211,12 +211,12 @@
#endif // FOUNDATION_HAS_DIRECTIONAL_GEOMETRY
+ (NSValue *)valueWithUIOffset:(UIOffset)insets API_AVAILABLE(ios(5.0), watchos(2.0));
-@property(nonatomic, readonly) CGPoint CGPointValue API_UNAVAILABLE(watchos);
-@property(nonatomic, readonly) CGVector CGVectorValue API_UNAVAILABLE(watchos);
-@property(nonatomic, readonly) CGSize CGSizeValue API_UNAVAILABLE(watchos);
-@property(nonatomic, readonly) CGRect CGRectValue API_UNAVAILABLE(watchos);
-@property(nonatomic, readonly) CGAffineTransform CGAffineTransformValue API_UNAVAILABLE(watchos);
-@property(nonatomic, readonly) UIEdgeInsets UIEdgeInsetsValue API_UNAVAILABLE(watchos);
+@property(nonatomic, readonly) CGPoint CGPointValue API_AVAILABLE(watchos(2.0));
+@property(nonatomic, readonly) CGVector CGVectorValue API_AVAILABLE(watchos(2.0));
+@property(nonatomic, readonly) CGSize CGSizeValue API_AVAILABLE(watchos(2.0));
+@property(nonatomic, readonly) CGRect CGRectValue API_AVAILABLE(watchos(2.0));
+@property(nonatomic, readonly) CGAffineTransform CGAffineTransformValue API_AVAILABLE(watchos(2.0));
+@property(nonatomic, readonly) UIEdgeInsets UIEdgeInsetsValue API_AVAILABLE(watchos(2.0));
#ifndef FOUNDATION_HAS_DIRECTIONAL_GEOMETRY
#if UIKIT_HAS_UIFOUNDATION_SYMBOLS
@property(nonatomic, readonly) NSDirectionalEdgeInsets directionalEdgeInsetsValue API_AVAILABLE(ios(11.0),tvos(11.0),watchos(4.0));
@@ -228,12 +228,12 @@
@interface NSCoder (UIGeometryKeyedCoding)
-- (void)encodeCGPoint:(CGPoint)point forKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (void)encodeCGVector:(CGVector)vector forKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (void)encodeCGSize:(CGSize)size forKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (void)encodeCGRect:(CGRect)rect forKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (void)encodeCGAffineTransform:(CGAffineTransform)transform forKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (void)encodeUIEdgeInsets:(UIEdgeInsets)insets forKey:(NSString *)key API_UNAVAILABLE(watchos);
+- (void)encodeCGPoint:(CGPoint)point forKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (void)encodeCGVector:(CGVector)vector forKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (void)encodeCGSize:(CGSize)size forKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (void)encodeCGRect:(CGRect)rect forKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (void)encodeCGAffineTransform:(CGAffineTransform)transform forKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (void)encodeUIEdgeInsets:(UIEdgeInsets)insets forKey:(NSString *)key API_AVAILABLE(watchos(2.0));
#ifndef FOUNDATION_HAS_DIRECTIONAL_GEOMETRY
#if UIKIT_HAS_UIFOUNDATION_SYMBOLS
- (void)encodeDirectionalEdgeInsets:(NSDirectionalEdgeInsets)insets forKey:(NSString *)key API_AVAILABLE(ios(11.0),tvos(11.0),watchos(4.0));
@@ -241,12 +241,12 @@
#endif // FOUNDATION_HAS_DIRECTIONAL_GEOMETRY
- (void)encodeUIOffset:(UIOffset)offset forKey:(NSString *)key API_AVAILABLE(ios(5.0), watchos(2.0));
-- (CGPoint)decodeCGPointForKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (CGVector)decodeCGVectorForKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (CGSize)decodeCGSizeForKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (CGRect)decodeCGRectForKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (CGAffineTransform)decodeCGAffineTransformForKey:(NSString *)key API_UNAVAILABLE(watchos);
-- (UIEdgeInsets)decodeUIEdgeInsetsForKey:(NSString *)key API_UNAVAILABLE(watchos);
+- (CGPoint)decodeCGPointForKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (CGVector)decodeCGVectorForKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (CGSize)decodeCGSizeForKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (CGRect)decodeCGRectForKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (CGAffineTransform)decodeCGAffineTransformForKey:(NSString *)key API_AVAILABLE(watchos(2.0));
+- (UIEdgeInsets)decodeUIEdgeInsetsForKey:(NSString *)key API_AVAILABLE(watchos(2.0));
#ifndef FOUNDATION_HAS_DIRECTIONAL_GEOMETRY
#if UIKIT_HAS_UIFOUNDATION_SYMBOLS
- (NSDirectionalEdgeInsets)decodeDirectionalEdgeInsetsForKey:(NSString *)key API_AVAILABLE(ios(11.0),tvos(11.0),watchos(4.0));
diff -ruN /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarControllerSidebar.h /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarControllerSidebar.h
--- /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarControllerSidebar.h 2024-06-30 15:24:45
+++ /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarControllerSidebar.h 2024-07-16 00:59:57
@@ -97,6 +97,17 @@
@end
+#pragma mark - UITabBarControllerSidebarAnimating
+
+API_AVAILABLE(ios(18.0), visionos(2.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
+NS_SWIFT_NAME(UITabBarControllerSidebar.Animating)
+@protocol UITabBarControllerSidebarAnimating <NSObject>
+
+- (void)addAnimations:(void (^)(void))animations;
+- (void)addCompletion:(void (^)(void))completion NS_SWIFT_DISABLE_ASYNC;
+
+@end
+
#pragma mark - UITabBarControllerSidebarDelegate
@class UITabSidebarItem, UITabSidebarItemRequest;
@@ -107,8 +118,10 @@
@optional
-/// Notifies the delegate when the visibility of the sidebar has been changed by the user.
-- (void)tabBarController:(UITabBarController *)tabBarController sidebarVisibilityDidChange:(UITabBarControllerSidebar *)sidebar;
+/// Notifies the delegate when the visibility of the sidebar is about to change when `sidebar.isHidden` changes.
+/// Add animations to the animator to run alongside the visibility update. Alongside animations and completions will run immediately
+/// if the sidebar visibility is changed without animation.
+- (void)tabBarController:(UITabBarController *)tabBarController sidebarVisibilityWillChange:(UITabBarControllerSidebar *)sidebar animator:(id<UITabBarControllerSidebarAnimating>)animator;
#pragma mark Configuration
diff -ruN /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h
--- /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h 2024-06-30 15:14:33
+++ /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h 2024-07-12 13:06:55
@@ -260,7 +260,12 @@
@property (nonatomic, readonly, getter=isEditable) BOOL editable API_AVAILABLE(ios(18.0), macos(15.0), visionos(2.0)) API_UNAVAILABLE(tvos, watchos);
- (void)insertAttributedText:(NSAttributedString *)string API_AVAILABLE(ios(12.0), tvos(12.0), watchos(5.0), macos(10.14), visionos(1.0)) API_UNAVAILABLE(watchos);
+- (NSAttributedString *)attributedTextInRange:(UITextRange *)range API_AVAILABLE(ios(12.0), tvos(12.0), macos(10.14), visionos(1.0)) API_UNAVAILABLE(watchos);
- (void)replaceRange:(UITextRange *)range withAttributedText:(NSAttributedString *)attributedText API_AVAILABLE(ios(13.0), tvos(13.0), macos(10.15), visionos(1.0)) API_UNAVAILABLE(watchos);
+
+// These methods are called when the Writing Tools panel is presented and dismissed
+- (void)willPresentWritingTools API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (void)didDismissWritingTools API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(tvos, watchos, visionos);
@end
//---------------------------------------------------------------------------------------------------
diff -ruN /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h
--- /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h 2024-06-30 14:20:51
+++ /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h 2024-07-12 04:49:07
@@ -208,6 +208,28 @@
/// implies `RichText`, and Writing Tools may provide attributes for tabular layout
UIWritingToolsAllowedInputOptionsTable = 1 << 3,
+} API_DEPRECATED("Use UIWritingToolsResultOptions instead", ios(18.0, API_TO_BE_DEPRECATED), macos(15.0, API_TO_BE_DEPRECATED)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);;
+
+//
+// UIWritingToolsResultOptions
+//
+// Controls the configuration of the available Writing Tools UI
+//
+typedef NS_OPTIONS(NSUInteger, UIWritingToolsResultOptions) {
+ /// System-defined behavior
+ UIWritingToolsResultDefault = 0,
+
+ /// Writing Tools will provide plain text in proofreading suggestions or rewrites
+ UIWritingToolsResultPlainText = 1 << 0,
+
+ /// As well as plain text, Writing Tools will provide text attributes in proofreading suggestions or rewrites that are natively supported or known to be easily adopted (such as lists)
+ UIWritingToolsResultRichText = 1 << 1,
+
+ /// implies `RichText`, and Writing Tools may provide attributes for list layout
+ UIWritingToolsResultList = 1 << 2,
+
+ /// implies `RichText`, and Writing Tools may provide attributes for tabular layout
+ UIWritingToolsResultTable = 1 << 3,
} API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);
typedef NSString * UITextContentType NS_TYPED_ENUM API_UNAVAILABLE(watchos);
@@ -263,7 +285,8 @@
@property(nullable,nonatomic,copy) UITextInputPasswordRules *passwordRules API_AVAILABLE(ios(12.0)) API_UNAVAILABLE(watchos); // default is nil
@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(tvos, watchos, visionos);
-@property UIWritingToolsAllowedInputOptions writingToolsAllowedInputOptions API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);
+@property UIWritingToolsAllowedInputOptions writingToolsAllowedInputOptions API_DEPRECATED_WITH_REPLACEMENT("allowedWritingToolsResultOptions", ios(18.0, API_TO_BE_DEPRECATED), macos(15.0, API_TO_BE_DEPRECATED)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);
+@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);
@end
diff -ruN /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h
--- /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h 2024-07-03 01:26:22
+++ /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h 2024-07-13 14:23:37
@@ -268,7 +268,10 @@
// Also see UITextInputTraits.h
@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(tvos, watchos, visionos);
-@property UIWritingToolsAllowedInputOptions writingToolsAllowedInputOptions API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);
+@property UIWritingToolsAllowedInputOptions writingToolsAllowedInputOptions API_DEPRECATED_WITH_REPLACEMENT("allowedWritingToolsResultOptions", ios(18.0, API_TO_BE_DEPRECATED), macos(15.0, API_TO_BE_DEPRECATED)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);
+
+// WARNING: UITextView does not support UIWritingToolsResultOptionsTable and will throw an exception for this value
+@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);
/// For text views that have flag `allowsEditingTextAttributes` set,
/// this configuration will be used for `UITextFormattingViewController`
diff -ruN /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h
--- /Applications/Xcode_16.0.0-beta3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h 2024-06-30 15:14:42
+++ /Applications/Xcode_16.0.0-beta4.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h 2024-07-16 01:18:21
@@ -271,7 +271,7 @@
/// The provided transition may be ignored if not supported by the
/// current context. For example, `UINavigationController` supports
/// the .zoom transition, but not the .coverVertical transition.
-@property (nonatomic, strong) UIViewControllerTransition *preferredTransition API_AVAILABLE(ios(18.0));
+@property (nonatomic, strong, nullable) UIViewControllerTransition *preferredTransition API_AVAILABLE(ios(18.0));
/*
Defines the presentation style that will be used for this view controller when it is presented modally. Set this property on the view controller to be presented, not the presenter.
- README
- xcode13.0 Binding Status
- xcode13.1 Binding Status
- xcode13.2 Binding Status
- xcode13.3 Binding Status
- xcode13.4 Binding Status
- xcode14.0 Binding Status
- xcode14.1 Binding Status
- xcode14.2 Binding Status
- xcode14.3 Binding Status
- xcode15.0 Binding Status
- xcode15.1 Binding Status
- xcode15.3 Binding Status
- xcode15.4 Binding Status
- xcode16.0 Binding Status
- xcode16.1 Binding Status
- xcode16.2 Binding Status