Skip to content

UIKit iOS xcode26.0 b2

Alex Soto edited this page Jun 24, 2025 · 1 revision

#UIKit.framework

diff -ruN /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h
--- /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h	2025-05-31 00:16:22
+++ /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h	2025-06-14 02:06:38
@@ -60,7 +60,7 @@
     UIBarButtonSystemItemRedo API_AVAILABLE(ios(3.0)),
     UIBarButtonSystemItemPageCurl API_DEPRECATED("", ios(4.0, 11.0)) API_UNAVAILABLE(visionos, watchos),
     UIBarButtonSystemItemClose API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos),
-    UIBarButtonSystemItemWritingTools API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos)
+    UIBarButtonSystemItemWritingTools API_AVAILABLE(ios(18.2), visionos(26.0)) API_UNAVAILABLE(tvos, watchos)
 } API_UNAVAILABLE(watchos);
 
 @class UIImage, UIView;
@@ -164,6 +164,20 @@
 /// This property is ignored if the item is in a `UIBarButtonItemGroup` with more than one item.
 /// The default value is `YES`.
 @property (nonatomic) BOOL sharesBackground API_AVAILABLE(ios(26.0)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos);
+
+/// An identifier used to match bar button items across transitions in a navigation bar or toolbar.
+///
+/// When the set of bar button items in a navigation bar or toolbar changes (for example, when pushing
+/// or popping view controllers), UIKit automatically animates the transition between the different sets
+/// of items. By default, UIKit uses heuristics based on item position and content to determine which items
+/// should be matched for these transitions.
+///
+/// Set this property with the same value on two different bar button items in different navigation item
+/// configurations to indicate that they should be treated as the same item during transitions. This allows
+/// for more natural animations when the visuals or function of an item changes across contexts.
+///
+/// The default value is `nil`, which means UIKit will use its default heuristics for transitions.
+@property (nonatomic, copy, nullable) NSString *identifier API_AVAILABLE(ios(26.0));
 
 /// Create a fixed group containing this bar button item. UIBarButtonItems may only be in a single UIBarButtonItemGroup at a time, adding a bar button item to a group removes it from any previous group.
 - (UIBarButtonItemGroup *)creatingFixedGroup API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(tvos, watchos);
diff -ruN /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentBrowserAction.h /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentBrowserAction.h
--- /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentBrowserAction.h	2025-05-30 23:54:05
+++ /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentBrowserAction.h	2025-06-14 03:54:25
@@ -28,6 +28,7 @@
 @property (nonatomic, readonly) UIDocumentBrowserActionAvailability availability;
 
 @property (nonatomic, strong, nullable) UIImage *image;
+@property (nonatomic, strong, nullable) UIImage *imageOnlyForContextMenu;
 
 /// Allows clients to restrict the action to only a specific set of content types. Default: [UTTypeItem.identifier]
 @property (nonatomic, copy) NSArray<NSString*> *supportedContentTypes;
diff -ruN /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFocus.h /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFocus.h
--- /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFocus.h	2025-05-30 23:37:10
+++ /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFocus.h	2025-06-14 12:16:01
@@ -118,7 +118,7 @@
 
 /// The priority this item has in its focus group. The higher the priority, the more likely it is to get picked when focus moves into this group.
 /// Note: this method can only be used to increase an item's priority, not decrease it. For example if an item is currently selected, the actual priority of this item will be determined by MAX(focusGroupPriority, UIFocusGroupPrioritySelected).
-@property (nonatomic, readonly) UIFocusGroupPriority focusGroupPriority API_AVAILABLE(ios(15.0)) API_UNAVAILABLE(tvos, watchos);
+@property (nonatomic, readonly) UIFocusGroupPriority focusGroupPriority API_AVAILABLE(ios(15.0))  API_UNAVAILABLE(tvos, watchos);
 
 /// If this property is present and returns `UIFocusItemDeferralModeNever`, the focus deferral will not be enabled again
 /// after the user engagement timeout has expired if this item is currently focused and programmatic focus updates pointing
diff -ruN /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h
--- /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h	2025-06-04 00:37:02
+++ /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIImageView.h	2025-06-18 01:11:00
@@ -47,9 +47,9 @@
 @property(nonatomic, readonly, getter=isAnimating) BOOL animating;
 
 /// The preferred treatment to use for HDR images. By default the image view will defer to the value from its traitCollection.
-@property (nonatomic, readwrite, assign) UIImageDynamicRange preferredImageDynamicRange;
+@property (nonatomic, readwrite, assign) UIImageDynamicRange preferredImageDynamicRange API_AVAILABLE(ios(17.0), tvos(17.0)) API_UNAVAILABLE(watchos);
 /// The resolved treatment to use for HDR images.
-@property (nonatomic, readonly , assign) UIImageDynamicRange imageDynamicRange;
+@property (nonatomic, readonly , assign) UIImageDynamicRange imageDynamicRange API_AVAILABLE(ios(17.0), tvos(17.0)) API_UNAVAILABLE(watchos);
 
 // if YES, the UIImageView will display a focused appearance when any of its immediate or distant superviews become focused
 @property (nonatomic) BOOL adjustsImageWhenAncestorFocused UIKIT_AVAILABLE_TVOS_ONLY(9_0);
diff -ruN /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h
--- /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h	2025-05-31 00:16:28
+++ /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h	2025-06-18 01:54:09
@@ -43,7 +43,7 @@
 /**
  * @abstract Asks the delegate if the text at the specified `ranges` should be replaced with `text`.
  *
- * @discussion If this method returns YES then the text view will, at its own discretion, choose any one of the specified `ranges` of text and replace it with the specified `replacementText` before deleting the text at the other ranges.
+ * @discussion If this method returns YES then the text view will, at its own discretion, choose any one of the specified `ranges` of text and replace it with the specified `replacementText` before deleting the text at the other ranges. If the delegate does not implement this method then the `textView:shouldChangeTextInRange:replacementText:` method will be called and passed the union range instead. If the delegate also does not implement that method then YES is assumed.
  *
  * @param textView                  The text view asking the delegate
  * @param ranges                       The ranges of the text that should be deleted before replacing
@@ -225,7 +225,7 @@
 /// A union of all the `selectedRanges`.
 @property(nonatomic) NSRange selectedRange API_DEPRECATED_WITH_REPLACEMENT("selectedRanges", ios(2.0, API_TO_BE_DEPRECATED));
 /**
- * The `NSRange`s of the selection. In most cases, there will only be a single selected range. For cases where bidirectional text is selected, there may be multiple discontiguous ranges. These selected ranges will always be in the normal form, which means they are sorted in ascending order and there are no overlaps. The selected ranges will always be converted to its normal form when they are set. Empty array corresponds to no selection.
+ * The `NSRange`s of the selection. In most cases, there will only be a single selected range. For cases where bidirectional text is selected, there may be multiple discontiguous ranges. These selected ranges will always be in the normal form, which means they are sorted in ascending order and there are no overlaps. The selected ranges will always be converted to its normal form when they are set. There will always be at least one selected range in this array. So if this array is set to an empty array then the selection will be cleared and a single selected range will be left behind where the length will be 0 and the location will be the location at the end of the selection.
  */
 @property(nonatomic, copy, nonnull) NSArray<NSValue *> *selectedRanges API_AVAILABLE(ios(26.0), tvos(26.0), visionos(26.0), watchos(26.0)) NS_REFINED_FOR_SWIFT;
 
diff -ruN /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h
--- /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h	2025-06-03 00:34:05
+++ /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITraitCollection.h	2025-06-18 01:54:03
@@ -145,7 +145,7 @@
 @property (nonatomic) UILegibilityWeight legibilityWeight;
 @property (nonatomic) UIUserInterfaceActiveAppearance activeAppearance;
 @property (nonatomic) UINSToolbarItemPresentationSize toolbarItemPresentationSize API_AVAILABLE(macCatalyst(17.0));
-@property (nonatomic) UIImageDynamicRange imageDynamicRange;
+@property (nonatomic) UIImageDynamicRange imageDynamicRange API_AVAILABLE(ios(17.0), tvos(17.0)) API_UNAVAILABLE(watchos);
 @property (nonatomic) UISceneCaptureState sceneCaptureState API_AVAILABLE(ios(17.0), tvos(17.0), visionos(1.0));
 @property (nonatomic, copy) NSString *typesettingLanguage;
 @property (nonatomic) UIListEnvironment listEnvironment API_AVAILABLE(ios(18.0), tvos(18.0), visionos(2.0)) API_UNAVAILABLE(watchos);
diff -ruN /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h
--- /Applications/Xcode_26.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h	2025-06-03 00:34:13
+++ /Applications/Xcode_26.0.0-beta2.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIViewController.h	2025-06-18 01:28:44
@@ -47,7 +47,7 @@
 typedef NS_ENUM(NSInteger, UIModalPresentationStyle) {
     UIModalPresentationFullScreen = 0,
     UIModalPresentationPageSheet API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(tvos),
-    UIModalPresentationFormSheet API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(tvos),
+    UIModalPresentationFormSheet API_AVAILABLE(ios(3.2), tvos(26.0)),
     UIModalPresentationCurrentContext API_AVAILABLE(ios(3.2)),
     UIModalPresentationCustom API_AVAILABLE(ios(7.0)),
     UIModalPresentationOverFullScreen API_AVAILABLE(ios(8.0)),
Clone this wiki locally