Skip to content

UIKit tvOS xcode14.3 beta1

Alex Soto edited this page Mar 15, 2023 · 2 revisions

#UIKit.framework https://github.com/xamarin/xamarin-macios/pull/17810

diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivity.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivity.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivity.h	2022-10-06 13:23:27
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivity.h	2023-02-11 22:25:03
@@ -34,6 +34,7 @@
 UIKIT_EXTERN UIActivityType const UIActivityTypeSharePlay          API_AVAILABLE(ios(15.4)) __TVOS_PROHIBITED;
 UIKIT_EXTERN UIActivityType const UIActivityTypeCollaborationInviteWithLink  API_AVAILABLE(ios(16.0)) __TVOS_PROHIBITED;
 UIKIT_EXTERN UIActivityType const UIActivityTypeCollaborationCopyLink  API_AVAILABLE(ios(16.0)) __TVOS_PROHIBITED;
+UIKIT_EXTERN UIActivityType const UIActivityTypeAddToHomeScreen  API_AVAILABLE(ios(16.4)) __TVOS_PROHIBITED;
 
 typedef NS_ENUM(NSInteger, UIActivityCategory) {
     UIActivityCategoryAction,
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivityItemsConfigurationReading.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivityItemsConfigurationReading.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivityItemsConfigurationReading.h	2022-10-06 13:21:42
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIActivityItemsConfigurationReading.h	2023-02-11 22:22:41
@@ -30,6 +30,7 @@
 typedef NSString * UIActivityItemsConfigurationInteraction NS_TYPED_EXTENSIBLE_ENUM API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(watchos) API_UNAVAILABLE(tvos);
 
 UIKIT_EXTERN UIActivityItemsConfigurationInteraction const UIActivityItemsConfigurationInteractionShare API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(watchos) API_UNAVAILABLE(tvos);
+UIKIT_EXTERN UIActivityItemsConfigurationInteraction const UIActivityItemsConfigurationInteractionCopy API_AVAILABLE(ios(16.4)) API_UNAVAILABLE(watchos) API_UNAVAILABLE(tvos);
 
 
 API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(watchos) API_UNAVAILABLE(tvos) NS_SWIFT_UI_ACTOR
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButtonConfiguration.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButtonConfiguration.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButtonConfiguration.h	2022-10-06 13:23:31
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIButtonConfiguration.h	2023-02-11 22:22:42
@@ -8,6 +8,7 @@
 
 #import <Foundation/Foundation.h>
 #import <UIKit/UIBackgroundConfiguration.h>
+#import <UIKit/NSParagraphStyle.h>
 
 @class UIImageSymbolConfiguration;
 @class UIButton;
@@ -118,10 +119,14 @@
 @property (nonatomic, readwrite, copy, nullable) NSString *title;
 @property (nonatomic, readwrite, copy, nullable) NSAttributedString *attributedTitle;
 @property (nonatomic, readwrite, copy, nullable) UIConfigurationTextAttributesTransformer titleTextAttributesTransformer;
+/// Default is WordWrapping. WordWrapping and CharWrapping both allow for multi-line text, other modes will restrict the title to a single line of text.
+@property (nonatomic, readwrite, assign) NSLineBreakMode titleLineBreakMode;
 
 @property (nonatomic, readwrite, copy, nullable) NSString *subtitle;
 @property (nonatomic, readwrite, copy, nullable) NSAttributedString *attributedSubtitle;
 @property (nonatomic, readwrite, copy, nullable) UIConfigurationTextAttributesTransformer subtitleTextAttributesTransformer;
+/// Default is WordWrapping. WordWrapping and CharWrapping both allow for multi-line text, other modes will restrict the subtitle to a single line of text.
+@property (nonatomic, readwrite, assign) NSLineBreakMode subtitleLineBreakMode;
 
 /// What kind of indicator should the button show. Default value is .automatic.
 @property (nonatomic, readwrite, assign) UIButtonConfigurationIndicator indicator API_AVAILABLE(ios(16.0));
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarView.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarView.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarView.h	2022-10-06 13:21:42
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarView.h	2023-02-11 22:22:40
@@ -73,6 +73,8 @@
 API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos)
 @protocol UICalendarViewDelegate<NSObject>
 
+@optional
+
 /**
  *  @abstract Called when the calendar view is preparing decorations.
  *
@@ -82,6 +84,15 @@
  *  @return A @c UICalendarViewDecoration to annotate the specific date. Return @c nil for no decoration.
  */
 - (nullable UICalendarViewDecoration *)calendarView:(UICalendarView *)calendarView decorationForDateComponents:(NSDateComponents *)dateComponents;
+
+/**
+ *  @abstract Called when the visible date has changed from @c previousDateComponents from user interaction.
+ *
+ *  @param calendarView The @c UICalendarView
+ *  @param previousDateComponents The previous date components before the visible date components changed.
+ */
+- (void)calendarView:(UICalendarView *)calendarView didChangeVisibleDateComponentsFrom:(NSDateComponents *)previousDateComponents API_AVAILABLE(ios(16.2));
+
 
 @end
 
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIHoverGestureRecognizer.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIHoverGestureRecognizer.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIHoverGestureRecognizer.h	2022-10-06 13:21:43
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIHoverGestureRecognizer.h	2023-02-11 22:22:42
@@ -26,6 +26,18 @@
 /// don't support z offset.
 @property (nonatomic, readonly) CGFloat zOffset API_AVAILABLE(ios(16.1)) API_UNAVAILABLE(watchos, tvos);
 
+/// The azimuth angle of the current device in the specified view, or the gesture recognizer's window if nil. 0 is
+/// returned for devices that don't support azimuth.
+- (CGFloat)azimuthAngleInView:(nullable UIView *)view API_AVAILABLE(ios(16.4)) API_UNAVAILABLE(watchos, tvos);
+
+/// The azimuth unit vector of the current device in the specified view, or the gesture recognizer's window if nil.
+/// An empty vector is returned for devices that don't support azimuth.
+- (CGVector)azimuthUnitVectorInView:(nullable UIView *)view API_AVAILABLE(ios(16.4)) API_UNAVAILABLE(watchos, tvos);
+
+/// The altitude angle of the current device. 0 is returned for devices that don't support altitude.
+@property (nonatomic, readonly) CGFloat altitudeAngle API_AVAILABLE(ios(16.4)) API_UNAVAILABLE(watchos, tvos);
+
+
 @end
 
 #else
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImage.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImage.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImage.h	2022-10-06 13:23:25
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImage.h	2023-02-11 22:22:34
@@ -334,7 +334,7 @@
 #if UIKIT_HAS_UIFOUNDATION_SYMBOLS
 @interface NSTextAttachment (UIImage)
 
-+ (NSTextAttachment *)textAttachmentWithImage:(UIImage *)image API_AVAILABLE(ios(13.0),tvos(13.0));
++ (NSTextAttachment *)textAttachmentWithImage:(UIImage *)image API_AVAILABLE(ios(13.0),tvos(13.0)) API_UNAVAILABLE(watchos);
 
 @end
 #endif
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageSymbolConfiguration.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageSymbolConfiguration.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageSymbolConfiguration.h	2022-11-10 19:19:08
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageSymbolConfiguration.h	2023-02-12 14:11:32
@@ -70,7 +70,7 @@
     API_AVAILABLE(ios(15.0),tvos(15.0),watchos(8.0));
 + (instancetype)configurationWithPaletteColors:(NSArray<UIColor *> *)paletteColors API_AVAILABLE(ios(15.0),tvos(15.0),watchos(8.0));
 + (instancetype)configurationPreferringMulticolor API_AVAILABLE(ios(15.0),tvos(15.0),watchos(8.0));
-+ (instancetype)configurationPreferringMonochrome API_AVAILABLE(ios(16.0),macCatalyst(16.0),tvos(16.0),watchos(9.0));
++ (instancetype)configurationPreferringMonochrome API_AVAILABLE(ios(16.0),tvos(16.0),watchos(9.0));
 
 // Removes attributes from the configuration if they are set
 - (instancetype)configurationWithoutTextStyle;
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h	2022-10-06 13:23:31
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInterface.h	2023-02-11 22:25:08
@@ -118,10 +118,10 @@
 /* The numbered variations, systemGray2 through systemGray6, are grays which increasingly
  * trend away from systemGray and in the direction of systemBackgroundColor.
  *
- * In UIUserInterfaceStyleLight: systemGray1 is slightly lighter than systemGray.
- *                               systemGray2 is lighter than that, and so on.
- * In UIUserInterfaceStyleDark:  systemGray1 is slightly darker than systemGray.
- *                               systemGray2 is darker than that, and so on.
+ * In UIUserInterfaceStyleLight: systemGray2 is slightly lighter than systemGray.
+ *                               systemGray3 is lighter than that, and so on.
+ * In UIUserInterfaceStyleDark:  systemGray2 is slightly darker than systemGray.
+ *                               systemGray3 is darker than that, and so on.
  */
 @property (class, nonatomic, readonly) UIColor *systemGray2Color        API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos);
 @property (class, nonatomic, readonly) UIColor *systemGray3Color        API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos);
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILabel.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILabel.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILabel.h	2022-10-06 13:23:37
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UILabel.h	2023-02-12 14:11:43
@@ -60,7 +60,7 @@
 // Specifies the line break strategies that may be used for laying out the text in this label.
 // If this property is not set, the default value is NSLineBreakStrategyStandard.
 // If the label contains an attributed text with paragraph style(s) that specify a set of line break strategies, the set of strategies in the paragraph style(s) will be used instead of the set of strategies defined by this property.
-@property(nonatomic) NSLineBreakStrategy lineBreakStrategy;
+@property(nonatomic) NSLineBreakStrategy lineBreakStrategy API_AVAILABLE(ios(14.0), tvos(14.0), watchos(7.0));
 
 // override points. can adjust rect before calling super.
 // label has default content mode of UIViewContentModeRedraw
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISearchBar.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISearchBar.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISearchBar.h	2022-11-10 19:19:07
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISearchBar.h	2023-02-12 14:11:31
@@ -109,6 +109,11 @@
  */
 @property (nullable, nonatomic, readwrite, strong) UIView *inputAccessoryView;
 
+/// When set to false, user interaction will be prevented and the search bar will take on a disabled appearance
+/// If the search bar is associated with a UINavigationItem with `UINavigationItemSearchBarPlacementInline`,
+/// then the minimized (icon-only) UISearchBar will not grow to the text field while `enabled` is false.
+@property (nonatomic, getter=isEnabled) BOOL enabled API_AVAILABLE(ios(16.4),tvos(16.4)); // Default YES
+
 // 1pt wide images and resizable images will be scaled or tiled according to the resizable area, otherwise the image will be tiled
 @property(nullable, nonatomic,strong) UIImage *backgroundImage API_AVAILABLE(ios(5.0)) UI_APPEARANCE_SELECTOR;
 @property(nullable, nonatomic,strong) UIImage *scopeBarBackgroundImage API_AVAILABLE(ios(5.0)) UI_APPEARANCE_SELECTOR;
diff -ruN /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h
--- /Applications/Xcode_14.2.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h	2022-10-06 13:21:47
+++ /Applications/Xcode_14.3.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWindow.h	2023-02-12 14:11:40
@@ -84,16 +84,16 @@
 
 @interface UIWindow(UIWindowLayout)
 
-/// This layout guide is designed specifically for full-screen media content, and attaching constraints from deep in the window's view heirarchy will raise an exception.
+/// This layout guide is designed specifically for full-screen media content, and attaching constraints from deep in the window's view hierarchy will raise an exception.
 ///
 /// This guide provides a layout area for placing media content of a given aspect ratio (width over height) such that the content will be completely visible within the window.
 /// Compared to the standard `safeAreaLayoutGuide` on a view, this guide takes into account the aspect ratio of the content, allowing it the maximum size within the window's
 /// true safe area, including the actual shape of the screen when that is the only factor contributing to the safe area. The rect defined by this guide will be centered within the
 /// window.
 ///
-/// This layout guide should only be used for fixed aspect ratio content that is indended to fill the window (such as image or video content) and is not a replacement for the
+/// This layout guide should only be used for fixed aspect ratio content that is intended to fill the window (such as image or video content) and is not a replacement for the
 /// standard `safeAreaLayoutGuide` on each UIView which should be used for most content layout. The `safeAreaAspectFitLayoutGuide` should only be used with views
-/// that are direct subviews of, or very close descendants of, the guide's window. Creating constraints from this layout guide to views deeper in the view heirarchy or across
+/// that are direct subviews of, or very close descendants of, the guide's window. Creating constraints from this layout guide to views deeper in the view hierarchy or across
 /// views owned by child view controllers can significantly degrade performance and possibly raise an exception. Additionally, the safe area insets added by child view
 /// controllers will not be reflected in these cases. For anything other than full-screen/window media content, the standard `safeAreaLayoutGuide` on UIView should be used.
 @property(nonatomic,readonly,strong) UILayoutGuide<UILayoutGuideAspectFitting> *safeAreaAspectFitLayoutGuide API_AVAILABLE(ios(16.0), tvos(16.0));
Clone this wiki locally