Skip to content

UIKit iOS xcode9 beta1

Vincent Dondain edited this page Aug 29, 2017 · 13 revisions

#UIKit.framework ##Vincent

diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSAttributedString.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSAttributedString.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSAttributedString.h	2016-09-23 21:43:02.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSAttributedString.h	2017-05-30 01:57:43.000000000 -0400
@@ -146,6 +162,11 @@
 - (BOOL)containsAttachmentsInRange:(NSRange)range NS_AVAILABLE(10_11, 9_0);
 @end
 
+
+@interface NSAttributedString (UINSItemProvider) <NSItemProviderReading, NSItemProviderWriting>
+
+@end
+
 /************************ Deprecated ************************/
 
 typedef NS_ENUM(NSInteger, NSTextWritingDirection) {
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSFileProviderExtension.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSFileProviderExtension.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSFileProviderExtension.h	2016-09-23 21:43:02.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSFileProviderExtension.h	2017-05-30 01:57:27.000000000 -0400
@@ -7,54 +7,10 @@
 
 #import <Foundation/Foundation.h>
 
-NS_ASSUME_NONNULL_BEGIN
+#if __has_include(<FileProvider/NSFileProviderExtension.h>)
 
-NS_CLASS_AVAILABLE_IOS(8_0) __TVOS_PROHIBITED @interface NSFileProviderExtension : NSObject
-// You don't want to override these
+// NSFileProviderExtension has moved to its own framework.
+// Please modify your project to link against and include FileProvider.framework instead of UIKit.
+#import <FileProvider/NSFileProviderExtension.h>
 
-// metadata contains NSURLNameKey, NSURLFileSizeKey, NSURLIsPackageKey
-+ (BOOL)writePlaceholderAtURL:(NSURL *)placeholderURL withMetadata:(NSDictionary *)metadata error:(NSError **)error;
-+ (NSURL *)placeholderURLForURL:(NSURL *)url;
-
-// An identifier unique to this provider.
-// When modifying the files stored in the directory returned by documentStorageURL, you should pass this identifier
-// to your file coordinator's setPurposeIdentifier: method.
-// By default, this returns the bundle identifier of the application containing your extension. You need to make sure to use the same identifier in your containing app.
-#if UIKIT_DEFINE_AS_PROPERTIES
-@property(nonatomic, readonly) NSString *providerIdentifier;
-#else
-- (NSString *)providerIdentifier;
-#endif
-
-// The root URL for provided documents. This URL must be writable from your app extension, and must only be used for the extension's files or their placeholders.
-#if UIKIT_DEFINE_AS_PROPERTIES
-@property(nonatomic, readonly) NSURL *documentStorageURL;
-#else
-- (NSURL *)documentStorageURL;
 #endif
-
-// You may want to override these.
-
-// Should return the URL corresponding to a specific identifier. Fail if it's not a subpath of documentStorageURL.
-// This is a static mapping; each identifier must always return a path corresponding to the same file.
-// By default, this returns the path relative to the path returned by documentStorageURL.
-- (nullable NSURL *)URLForItemWithPersistentIdentifier:(NSString *)identifier;
-- (nullable NSString *)persistentIdentifierForItemAtURL:(NSURL *)url;
-
-// These need to be overridden. None of them should call super.
-
-// Should call + writePlaceholderAtURL: with the placeholder URL, then call the completion handler with that URL.
-- (void)providePlaceholderAtURL:(NSURL *)url completionHandler:(void (^)(NSError * __nullable error))completionHandler;
-
-// Should ensure that the actual file is in the position returned by URLForItemWithIdentifier:, then call the completion handler
-- (void)startProvidingItemAtURL:(NSURL *)url completionHandler:(void (^)(NSError * __nullable error))completionHandler;
-
-// Called at some point after the file has changed; the provider may then trigger an upload
-- (void)itemChangedAtURL:(NSURL *)url;
-
-// Called after the last claim to the file has been released. At this point, it is safe for the file provider to remove the content file.
-// Care should be taken that the corresponding placeholder file stays behind after the content file has been deleted.
-- (void)stopProvidingItemAtURL:(NSURL *)url;
-@end
-
-NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutAnchor.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutAnchor.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutAnchor.h	2016-09-23 21:43:03.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutAnchor.h	2017-05-27 22:37:30.000000000 -0400
@@ -3,10 +3,12 @@
 */
 
 #import <Foundation/Foundation.h>
-#import <UIKit/NSLayoutConstraint.h>
+#import <CoreGraphics/CoreGraphics.h>
 
 NS_ASSUME_NONNULL_BEGIN
 
+@class NSLayoutConstraint;
+
 /* An NSLayoutAnchor represents an edge or dimension of a layout item.  Its concrete 
  subclasses allow concise creation of constraints.  
     Instead of invoking 
@@ -39,18 +41,48 @@
 
 /* Axis-specific subclasses for location anchors: top/bottom, leading/trailing, baseline, etc.
  */
-@class NSLayoutXAxisAnchor, NSLayoutYAxisAnchor;
+@class NSLayoutXAxisAnchor, NSLayoutYAxisAnchor, NSLayoutDimension;
 NS_CLASS_AVAILABLE_IOS(9_0)
 @interface NSLayoutXAxisAnchor : NSLayoutAnchor<NSLayoutXAxisAnchor *>
+// A composite anchor for creating constraints relating horizontal distances between locations.
+- (NSLayoutDimension *)anchorWithOffsetToAnchor:(NSLayoutXAxisAnchor *)otherAnchor API_AVAILABLE(ios(10.0),tvos(10.0));
+
+@end
+
+@interface NSLayoutXAxisAnchor (UIViewDynamicSystemSpacingSupport)
+/* Constraints of the form,
+        receiver [= | ≥ | ≤] 'anchor' + 'multiplier' * system space, 
+ where the value of the system space is determined from information available from the anchors.
+    The constraint affects how far the receiver will be positioned trailing 'anchor', per the effective user interface layout direction.
+ */
+- (NSLayoutConstraint *)constraintEqualToSystemSpacingAfterAnchor:(NSLayoutXAxisAnchor *)anchor multiplier:(CGFloat)multiplier API_AVAILABLE(ios(11.0),tvos(11.0));
+- (NSLayoutConstraint *)constraintGreaterThanOrEqualToSystemSpacingAfterAnchor:(NSLayoutXAxisAnchor *)anchor multiplier:(CGFloat)multiplier API_AVAILABLE(ios(11.0),tvos(11.0));
+- (NSLayoutConstraint *)constraintLessThanOrEqualToSystemSpacingAfterAnchor:(NSLayoutXAxisAnchor *)anchor multiplier:(CGFloat)multiplier API_AVAILABLE(ios(11.0),tvos(11.0));
+
 @end
 NS_CLASS_AVAILABLE_IOS(9_0)
 @interface NSLayoutYAxisAnchor : NSLayoutAnchor<NSLayoutYAxisAnchor *>
+// A composite anchor for creating constraints relating vertical distances between locations.
+- (NSLayoutDimension *)anchorWithOffsetToAnchor:(NSLayoutYAxisAnchor *)otherAnchor API_AVAILABLE(ios(10.0),tvos(10.0));
+
+@end
+
+@interface NSLayoutYAxisAnchor (UIViewDynamicSystemSpacingSupport)
+/* Constraints of the form,
+        receiver [= | ≥ | ≤] 'anchor' + 'multiplier' * system space, 
+ where the value of the system space is determined from information available from the anchors.
+    The constraint affects how far the receiver will be positioned below 'anchor'. 
+    If either the receiver or 'anchor' is the firstBaselineAnchor or lastBaselineAnchor of a view with text content
+ then the spacing will depend on the fonts involved and will change when those do.
+ */
+- (NSLayoutConstraint *)constraintEqualToSystemSpacingBelowAnchor:(NSLayoutYAxisAnchor *)anchor multiplier:(CGFloat)multiplier API_AVAILABLE(ios(11.0),tvos(11.0));
+- (NSLayoutConstraint *)constraintGreaterThanOrEqualToSystemSpacingBelowAnchor:(NSLayoutYAxisAnchor *)anchor multiplier:(CGFloat)multiplier API_AVAILABLE(ios(11.0),tvos(11.0));
+- (NSLayoutConstraint *)constraintLessThanOrEqualToSystemSpacingBelowAnchor:(NSLayoutYAxisAnchor *)anchor multiplier:(CGFloat)multiplier API_AVAILABLE(ios(11.0),tvos(11.0));
 @end
 
 
 /* This layout anchor subclass is used for sizes (width & height).
  */
-@class NSLayoutDimension;
 NS_CLASS_AVAILABLE_IOS(9_0)
 @interface NSLayoutDimension : NSLayoutAnchor<NSLayoutDimension *>
 
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutManager.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutManager.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutManager.h	2016-08-12 01:05:53.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSLayoutManager.h	2017-05-27 22:37:38.000000000 -0400
@@ -83,28 +83,28 @@
 
 /**************************** Delegate ****************************/
 
-@property(nullable, assign, NS_NONATOMIC_IOSONLY) id <NSLayoutManagerDelegate> delegate;
+@property (nullable, weak, NS_NONATOMIC_IOSONLY) id <NSLayoutManagerDelegate> delegate;

 // If non-contiguous layout is not enabled, these will cause generation of all glyphs up to and including glyphIndex.  The first CGGlyphAtIndex variant returns kCGFontIndexInvalid if the requested index is out of the range (0, numberOfGlyphs), and optionally returns a flag indicating whether the requested index is in range.  The second CGGlyphAtIndex variant raises a NSRangeError if the requested index is out of range.
 - (CGGlyph)CGGlyphAtIndex:(NSUInteger)glyphIndex isValidIndex:(nullable BOOL *)isValidIndex NS_AVAILABLE(10_11,7_0);
 - (CGGlyph)CGGlyphAtIndex:(NSUInteger)glyphIndex NS_AVAILABLE(10_11,7_0);
-- (BOOL)isValidGlyphIndex:(NSUInteger)glyphIndex NS_AVAILABLE(10_11,7_0);
+- (BOOL)isValidGlyphIndex:(NSUInteger)glyphIndex API_AVAILABLE(macosx(10.0), ios(7.0), watchos(2.0), tvos(9.0));
 
 // If non-contiguous layout is not enabled, this will cause generation of all glyphs up to and including glyphIndex.  It will return the glyph property associated with the glyph at the specified index.
 - (NSGlyphProperty)propertyForGlyphAtIndex:(NSUInteger)glyphIndex NS_AVAILABLE(10_5, 7_0);
@@ -192,14 +192,8 @@
 
 // Returns (by reference for the "get" method) the character index or glyph index or both of the first unlaid character/glyph in the layout manager at this time.
 - (void)getFirstUnlaidCharacterIndex:(nullable NSUInteger *)charIndex glyphIndex:(nullable NSUInteger *)glyphIndex;
-
-#if UIKIT_DEFINE_AS_PROPERTIES
-@property(nonatomic, readonly) NSUInteger firstUnlaidCharacterIndex;
-@property(nonatomic, readonly) NSUInteger firstUnlaidGlyphIndex;
-#else
 - (NSUInteger)firstUnlaidCharacterIndex;
 - (NSUInteger)firstUnlaidGlyphIndex;
-#endif
 
 // Returns the container in which the given glyph is laid and (optionally) by reference the whole range of glyphs that are in that container.  This will cause glyph generation and layout for the line fragment containing the specified glyph, or if non-contiguous layout is not enabled, up to and including that line fragment; if non-contiguous layout is not enabled and effectiveGlyphRange is non-NULL, this will additionally cause glyph generation and layout for the entire text container containing the specified glyph.
 - (nullable NSTextContainer *)textContainerForGlyphAtIndex:(NSUInteger)glyphIndex effectiveRange:(nullable NSRangePointer)effectiveGlyphRange;
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSParagraphStyle.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSParagraphStyle.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSParagraphStyle.h	2016-09-23 19:10:16.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSParagraphStyle.h	2017-05-25 06:42:45.000000000 -0400
@@ -43,62 +44,58 @@
 
 NS_CLASS_AVAILABLE(10_0, 6_0) @interface NSParagraphStyle : NSObject <NSCopying, NSMutableCopying, NSSecureCoding>
 
-#if UIKIT_DEFINE_AS_PROPERTIES
-@property(class, nonatomic, readonly) NSParagraphStyle *defaultParagraphStyle; // This class method returns a shared and cached NSParagraphStyle instance with the default style settings, with same value as the result of [[NSParagraphStyle alloc] init].
-#else
-+ (NSParagraphStyle *)defaultParagraphStyle; // This class method returns a shared and cached NSParagraphStyle instance with the default style settings, with same value as the result of [[NSParagraphStyle alloc] init].
-#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
 
 
 
 NS_CLASS_AVAILABLE(10_0, 6_0) @interface NSMutableParagraphStyle : NSParagraphStyle
 
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSStringDrawing.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSStringDrawing.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSStringDrawing.h	2016-09-23 21:43:02.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSStringDrawing.h	2017-05-25 06:42:45.000000000 -0400
@@ -19,20 +19,20 @@
 NS_CLASS_AVAILABLE(10_11, 6_0) @interface NSStringDrawingContext : NSObject
 
 // Minimum scale factor for drawWithRect:options:context: and boundingRectWithSize:options:context: methods. If this property is set, the extended string drawing methods will attempt to draw the attributed string in the given bounds by proportionally scaling the font(s) in the attributed string
 
 @interface NSString(NSStringDrawing)
-- (CGSize)sizeWithAttributes:(nullable NSDictionary<NSString *, id> *)attrs NS_AVAILABLE(10_0, 7_0);
-- (void)drawAtPoint:(CGPoint)point withAttributes:(nullable NSDictionary<NSString *, id> *)attrs NS_AVAILABLE(10_0, 7_0);
-- (void)drawInRect:(CGRect)rect withAttributes:(nullable NSDictionary<NSString *, id> *)attrs NS_AVAILABLE(10_0, 7_0);
+- (CGSize)sizeWithAttributes:(nullable NSDictionary<NSAttributedStringKey, id> *)attrs NS_AVAILABLE(10_0, 7_0);
+- (void)drawAtPoint:(CGPoint)point withAttributes:(nullable NSDictionary<NSAttributedStringKey, id> *)attrs NS_AVAILABLE(10_0, 7_0);
+- (void)drawInRect:(CGRect)rect withAttributes:(nullable NSDictionary<NSAttributedStringKey, id> *)attrs NS_AVAILABLE(10_0, 7_0);
 @end
 
 @interface NSAttributedString(NSStringDrawing)
@@ -53,8 +53,8 @@
 // NOTE: All of the following methods will default to drawing on a baseline, limiting drawing to a single line.
 // To correctly draw and size multi-line text, pass NSStringDrawingUsesLineFragmentOrigin in the options parameter.
 @interface NSString (NSExtendedStringDrawing)
-- (void)drawWithRect:(CGRect)rect options:(NSStringDrawingOptions)options attributes:(nullable NSDictionary<NSString *, id> *)attributes context:(nullable NSStringDrawingContext *)context NS_AVAILABLE(10_11, 7_0);
-- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(nullable NSDictionary<NSString *, id> *)attributes context:(nullable NSStringDrawingContext *)context NS_AVAILABLE(10_11, 7_0);
+- (void)drawWithRect:(CGRect)rect options:(NSStringDrawingOptions)options attributes:(nullable NSDictionary<NSAttributedStringKey, id> *)attributes context:(nullable NSStringDrawingContext *)context NS_AVAILABLE(10_11, 7_0);
+- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options attributes:(nullable NSDictionary<NSAttributedStringKey, id> *)attributes context:(nullable NSStringDrawingContext *)context NS_AVAILABLE(10_11, 7_0);
 @end
 
 @interface NSAttributedString (NSExtendedStringDrawing)
@@ -64,8 +64,8 @@
 
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSTextStorage.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSTextStorage.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSTextStorage.h	2016-08-12 00:59:12.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSTextStorage.h	2017-05-30 01:57:43.000000000 -0400
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h	2016-09-23 21:43:03.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibility.h	2017-05-27 22:37:30.000000000 -0400
@@ -13,12 +13,14 @@
@@ -61,6 +63,12 @@
 @property (nullable, nonatomic, copy) NSString *accessibilityLabel;
 
 /*
+ The underlying attributed version of the accessibility label. Setting this property will change the
+ value of the accessibilityLabel property and vice-versa.
+ */
+@property (nullable, nonatomic, copy) NSAttributedString *accessibilityAttributedLabel API_AVAILABLE(ios(11.0),tvos(11.0));
+
+/*
  Returns a localized string that describes the result of performing an action on the element, when the result is non-obvious.
  The hint should be a brief phrase.
  For example: "Purchases the item." or "Downloads the attachment."
@@ -70,6 +78,12 @@
 @property (nullable, nonatomic, copy) NSString *accessibilityHint;
 
 /*
+ The underlying attributed version of the accessibility hint. Setting this property will change the
+ value of the accessibilityHint property and vice-versa.
+ */
+@property (nullable, nonatomic, copy) NSAttributedString *accessibilityAttributedHint API_AVAILABLE(ios(11.0),tvos(11.0));
+
+/*
  Returns a localized string that represents the value of the element, such as the value 
  of a slider or the text in a text field. Use only when the label of the element
  differs from a value. For example: A volume slider has a label of "Volume", but a value of "60%".
@@ -80,6 +94,12 @@
 @property (nullable, nonatomic, copy) NSString *accessibilityValue;
 
 /*
+ The underlying attributed version of the accessibility value. Setting this property will change the
+ value of the accessibilityValue property and vice-versa.
+ */
+@property (nullable, nonatomic, copy) NSAttributedString *accessibilityAttributedValue API_AVAILABLE(ios(11.0),tvos(11.0));
+
+/*
  Returns a UIAccessibilityTraits mask that is the OR combination of
  all accessibility traits that best characterize the element.
  See UIAccessibilityConstants.h for a list of traits.
@@ -174,47 +194,6 @@
 @end
 
 
-/*
- UIAccessibilityContainer
- 
- UIAccessibilityContainer methods can be overridden to vend individual elements
- that are managed by a single UIView.
- 
- For example, a single UIView might draw several items that (to an
- end user) have separate meaning and functionality.  It is important to vend
- each item as an individual accessibility element.
- 
- Sub-elements of a container that are not represented by concrete UIView
- instances (perhaps painted text or icons) can be represented using instances
- of UIAccessibilityElement class (see UIAccessibilityElement.h).
- 
- Accessibility containers MUST return NO to -isAccessibilityElement.
- */
-@interface NSObject (UIAccessibilityContainer)
-
-/*
- Returns the number of accessibility elements in the container.
- */
-- (NSInteger)accessibilityElementCount;
-
-/*
- Returns the accessibility element in order, based on index.
- default == nil 
- */
-- (nullable id)accessibilityElementAtIndex:(NSInteger)index;
-
-/*
- Returns the ordered index for an accessibility element
- default == NSNotFound 
- */
-- (NSInteger)indexOfAccessibilityElement:(id)element;
-
-// A list of container elements managed by the receiver.
-// This can be used as an alternative to implementing the dynamic methods.
-// default == nil
-@property (nullable, nonatomic, strong) NSArray *accessibilityElements NS_AVAILABLE_IOS(8_0);
-
-@end
 
 /*
  UIAccessibilityFocus
@@ -333,6 +312,55 @@
 // Returns a string representing the text displayed on the current page.
 - (nullable NSString *)accessibilityPageContent NS_AVAILABLE_IOS(5_0);
 
+@optional
+// If an object adopting this protocol responds to these methods, the system will try sending them before sending the non-attributed versions.
+- (nullable NSAttributedString *)accessibilityAttributedContentForLineNumber:(NSInteger)lineNumber API_AVAILABLE(ios(11.0), tvos(11.0));
+- (nullable NSAttributedString *)accessibilityAttributedPageContent API_AVAILABLE(ios(11.0), tvos(11.0));
+
+@end
+
+@interface NSObject(UIAccessibilityDragging)
+
+/* By default, if an accessible view or its subtree has drag and/or drop interactions, they will be
+ * automatically exposed by assistive technologies. However, if there is more than one such
+ * interaction, each drag or drop should have a name to disambiguate it and give a good user
+ * experience. Also, there may be situations in which you want to expose drags or drops from an
+ * element, and those interactions are installed on views that are not part of that element's view
+ * hierarchy subtree.
+ *
+ * This is trivially the case when the element is not a view at all, but an instance of
+ * UIAccessibilityElement.
+ *
+ * Another example is when a container view maintains interactions that are logically
+ * associated with subviews. For instance, UITableView has associated drag interactions that allow
+ * for dragging its rows; to make the rows draggable by assistive technologies, UITableViewCell has
+ * drag descriptors that describe where in the table view to start a drag to activate dragging of
+ * the cell.
+ * (Note that this implementation detail is noted here for expository purposes only and may change
+ * at any time without warning.)
+ *
+ * Properties defined here allow you to fine-tune how drags and drops are exposed to assistive
+ * technologies. Both of their getter methods can be overridden to provide information on-demand.
+ * For each location descriptor, the associated view should be the UIView with the appropriate
+ * UIInteraction object for that drag or drop.
+ *
+ * `accessibilityDragSourceDescriptors` is an array of UIAccessibilityLocationDescriptor
+ * objects and is used to define and describe what drags are available from an element.
+ *
+ * `accessibilityDropPointDescriptors` is similarly an array of
+ * UIAccessibilityLocationDescriptor objects and is used to define and describe where
+ * drops are possible on this element.
+ *
+ * To restore the default automatic behavior for these properties, assign (or return) the default
+ * value of nil. Note that nil does not describe the same behavior as the empty array, which
+ * specifies that there are no relevant interactions for this element.
+ *
+ */
+@property (nullable, nonatomic, copy) NSArray<UIAccessibilityLocationDescriptor *> *accessibilityDragSourceDescriptors API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos);
+
+@property (nullable, nonatomic, copy) NSArray<UIAccessibilityLocationDescriptor *> *accessibilityDropPointDescriptors API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos);
+
+
 @end
 
 /*
@@ -349,10 +377,11 @@
  Assistive Technology
  
  Use UIAccessibilityIsVoiceOverRunning() to determine if VoiceOver is running.
- Listen for UIAccessibilityVoiceOverStatusChanged to know when VoiceOver starts or stops.
+ Listen for UIAccessibilityVoiceOverStatusDidChangeNotification to know when VoiceOver starts or stops.
  */
 UIKIT_EXTERN BOOL UIAccessibilityIsVoiceOverRunning(void) NS_AVAILABLE_IOS(4_0);
-UIKIT_EXTERN NSString *const UIAccessibilityVoiceOverStatusChanged NS_AVAILABLE_IOS(4_0);
+UIKIT_EXTERN NSString *const UIAccessibilityVoiceOverStatusChanged API_DEPRECATED_WITH_REPLACEMENT("UIAccessibilityVoiceOverStatusDidChangeNotification", ios(4.0, 11.0), tvos(9.0, 11.0));
+UIKIT_EXTERN NSNotificationName const UIAccessibilityVoiceOverStatusDidChangeNotification API_AVAILABLE(ios(11.0), tvos(11.0));
 
 // Returns whether system audio is mixed down from stereo to mono.
 UIKIT_EXTERN BOOL UIAccessibilityIsMonoAudioEnabled(void) NS_AVAILABLE_IOS(5_0);
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityAdditions.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityAdditions.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityAdditions.h	2016-09-23 21:43:03.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityAdditions.h	2017-05-30 01:57:28.000000000 -0400
@@ -25,6 +25,10 @@
 - (nullable NSString *)pickerView:(UIPickerView *)pickerView accessibilityLabelForComponent:(NSInteger)component;
 - (nullable NSString *)pickerView:(UIPickerView *)pickerView accessibilityHintForComponent:(NSInteger)component;
 
+// If an object adopting this protocol responds to these methods, the system will try sending them before sending their non-attributed versions.
+- (nullable NSAttributedString *)pickerView:(UIPickerView *)pickerView accessibilityAttributedLabelForComponent:(NSInteger)component API_AVAILABLE(ios(11.0), tvos(11.0));
+- (nullable NSAttributedString *)pickerView:(UIPickerView *)pickerView accessibilityAttributedHintForComponent:(NSInteger)component API_AVAILABLE(ios(11.0), tvos(11.0));
+
 @end
 
 /*
@@ -38,6 +42,23 @@
 @optional
 - (nullable NSString *)accessibilityScrollStatusForScrollView:(UIScrollView *)scrollView;
 
+// If an object adopting this protocol responds to this method, the system will try sending it before sending its non-attributed version.
+- (nullable NSAttributedString *)accessibilityAttributedScrollStatusForScrollView:(UIScrollView *)scrollView API_AVAILABLE(ios(11.0), tvos(11.0));
+
 @end
 
+/* Invert Colors is often used by those with light or color sensitivities to make bright
+   colors darker. However, this has a destructive effect on content like images and videos.
+  
+   Set accessibilityIgnoresInvertColors to YES on a view that contains content that should
+   not be inverted. This effect will apply to the entire subview hierarchy of a view.
+
+   If a view already uses a dark themed design, it may also be appropriate to set this
+   property.
+ */
+@interface UIView (UIAccessibilityInvertColors)
+@property(nonatomic) BOOL accessibilityIgnoresInvertColors API_AVAILABLE(ios(11_0), tvos(11_0));
+@end
+
+
 NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityConstants.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityConstants.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityConstants.h	2016-08-12 01:05:53.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityConstants.h	2017-05-25 06:42:45.000000000 -0400
@@ -235,5 +243,32 @@
 // Default value == 1.0f.
 UIKIT_EXTERN NSString *const UIAccessibilitySpeechAttributePitch NS_AVAILABLE_IOS(7_0);
 
+// The corresponding value for this key should be a NSNumber with a YES or NO value.
+// If YES, then this announcement will be queued behind existing speech; if NO, then it will interrupt existing speech.
+// Default behavior is to interrupt existing speech.
+UIKIT_EXTERN NSString *const UIAccessibilitySpeechAttributeQueueAnnouncement NS_AVAILABLE_IOS(11_0);
+
+// Use an NSString, containing International Phonetic Alphabet (IPA) symbols.
+// Controls the pronunciation of a word or phrase, e.g. a proper name.
+UIKIT_EXTERN NSString *const UIAccessibilitySpeechAttributeIPANotation NS_AVAILABLE_IOS(11_0);
+
+/*
+ Accessibility Text Attributes
+ 
+ The following attributes can be used in the NSAttributedString returned by attributeText methods of views conforming to UITextInput
+ to convey extra information about the text.
+ 
+ Use existing NSAttributedString attributes for properties not defined here from <UIKit/NSAttributedString.h>
+ 
+ To include an inline element (like an image or table), use NSAttachmentAttributeName and set the value to the element.
+ */
+
+// Use an NSNumber where the value is [0, 6]. Use 0 to indicate the absence of a specific heading level.
+UIKIT_EXTERN NSString *const UIAccessibilityTextAttributeHeadingLevel NS_AVAILABLE_IOS(11_0);
+
+// Use an NSArray of localized NSStrings to convey custom text attributes.
+// For example, a range of text may have multiple custom 'annotation styles, which can be described with this key.
+UIKIT_EXTERN NSString *const UIAccessibilityTextAttributeCustom NS_AVAILABLE_IOS(11_0);
+
 NS_ASSUME_NONNULL_END
 
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityContainer.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityContainer.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityContainer.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityContainer.h	2017-05-30 01:57:28.000000000 -0400
@@ -0,0 +1,93 @@
+//
+//  UIAccessibilityContainer.h
+//  UIKit
+//
+//  Copyright (c) 2016 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIAccessibilityConstants.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*
+ UIAccessibilityContainer
+ 
+ UIAccessibilityContainer methods can be overridden to vend individual elements
+ that are managed by a single UIView.
+ 
+ For example, a single UIView might draw several items that (to an
+ end user) have separate meaning and functionality.  It is important to vend
+ each item as an individual accessibility element.
+ 
+ Sub-elements of a container that are not represented by concrete UIView
+ instances (perhaps painted text or icons) can be represented using instances
+ of UIAccessibilityElement class (see UIAccessibilityElement.h).
+ 
+ Accessibility containers MUST return NO to -isAccessibilityElement.
+ */
+@interface NSObject (UIAccessibilityContainer)
+
+/*
+ Returns the number of accessibility elements in the container.
+ */
+- (NSInteger)accessibilityElementCount;
+
+/*
+ Returns the accessibility element in order, based on index.
+ default == nil
+ */
+- (nullable id)accessibilityElementAtIndex:(NSInteger)index;
+
+/*
+ Returns the ordered index for an accessibility element
+ default == NSNotFound
+ */
+- (NSInteger)indexOfAccessibilityElement:(id)element;
+
+// A list of container elements managed by the receiver.
+// This can be used as an alternative to implementing the dynamic methods.
+// default == nil
+@property (nullable, nonatomic, strong) NSArray *accessibilityElements NS_AVAILABLE_IOS(8_0);
+
+// Some containers provide more context for accessibility elements, such as tables or lists.
+// Set this property so that assistive technologies can output more information.
+// default == UIAccessibilityContainerTypeNone
+@property (nonatomic) UIAccessibilityContainerType accessibilityContainerType NS_AVAILABLE_IOS(11_0);
+
+@end
+
+/* 
+ The UIAccessibilityContainerDataTable and UIAccessibilityContainerDataTableCell protocols
+ convey more information specific to tables that contain structured data.
+ */
+
+NS_CLASS_AVAILABLE_IOS(11_0) @protocol UIAccessibilityContainerDataTableCell <NSObject>
+@required
+
+// The row/column index + the row/column span.
+// default == { NSNotFound, 0 }
+- (NSRange)accessibilityRowRange;
+- (NSRange)accessibilityColumnRange;
+
+@end
+
+NS_CLASS_AVAILABLE_IOS(11_0) @protocol UIAccessibilityContainerDataTable <NSObject>
+@required
+
+// Return the cell element for a specific row/column, including elements that span rows/columns.
+// default == nil
+- (nullable id<UIAccessibilityContainerDataTableCell>)accessibilityDataTableCellElementForRow:(NSUInteger)row column:(NSUInteger)column;
+
+- (NSUInteger)accessibilityRowCount;
+- (NSUInteger)accessibilityColumnCount;
+
+@optional
+// Return header elements for a specific row or column.
+// default == nil
+- (nullable NSArray<id<UIAccessibilityContainerDataTableCell>> *)accessibilityHeaderElementsForRow:(NSUInteger)row;
+- (nullable NSArray<id<UIAccessibilityContainerDataTableCell>> *)accessibilityHeaderElementsForColumn:(NSUInteger)column;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityContentSizeCategoryImageAdjusting.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityContentSizeCategoryImageAdjusting.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityContentSizeCategoryImageAdjusting.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityContentSizeCategoryImageAdjusting.h	2017-05-30 01:57:28.000000000 -0400
@@ -0,0 +1,42 @@
+//
+//  UIAccessibilityContentSizeCategoryImageAdjusting.h
+//  UIKit
+//
+//  Copyright (c) 2017 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIKitDefines.h>
+#import <UIKit/UIImageView.h>
+#import <UIKit/UIButton.h>
+#import <UIKit/NSTextAttachment.h>
+
+// These should be used in conjunction with the "Preserve vector data" checkbox for an asset catalog asset, to allow smooth scaling of symbolic glyphs.
+
+NS_ASSUME_NONNULL_BEGIN
+
+UIKIT_EXTERN API_AVAILABLE(ios(11.0),tvos(11.0))
+@protocol UIAccessibilityContentSizeCategoryImageAdjusting <NSObject>
+
+// When this is equal to YES, the receiver's intrinsic size will increase for users who prefer an accessibility content size category.
+@property (nonatomic) BOOL adjustsImageSizeForAccessibilityContentSizeCategory;
+
+@end
+
+// If the contentMode of the UIImageView is set to a mode that scales the image (e.g. the default one), the image will be scaled for an accessibility content size category. If not, the behavior is undefined.
+@interface UIImageView (UIAccessibilityContentSizeCategoryImageAdjusting) <UIAccessibilityContentSizeCategoryImageAdjusting>
+
+@end
+
+// If applicable, the image (not the background image) will be scaled for an accessibility content size category. Image edge insets are left unchanged.
+@interface UIButton (UIAccessibilityContentSizeCategoryImageAdjusting) <UIAccessibilityContentSizeCategoryImageAdjusting>
+
+@end
+
+// If an image is set, the attachment bounds' size will increase for users who prefer an accessibility content size category.
+// This should be used in a UIContentSizeCategoryAdjusting view that responds YES to adjustsFontForContentSizeCategory and has a font that can be adjusted. If not, the behavior is undefined.
+@interface NSTextAttachment (UIAccessibilityContentSizeCategoryImageAdjusting) <UIAccessibilityContentSizeCategoryImageAdjusting>
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityCustomAction.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityCustomAction.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityCustomAction.h	2016-09-23 21:43:03.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityCustomAction.h	2017-05-30 01:57:28.000000000 -0400
@@ -12,6 +12,7 @@
 NS_CLASS_AVAILABLE_IOS(8_0) @interface UIAccessibilityCustomAction : NSObject
 
 - (instancetype)initWithName:(NSString *)name target:(nullable id)target selector:(SEL)selector;
+- (instancetype)initWithAttributedName:(NSAttributedString *)attributedName target:(nullable id)target selector:(SEL)selector API_AVAILABLE(ios(11.0), tvos(11.0));
 
 /*
  A localized name that describes the action.
@@ -19,6 +20,12 @@
 @property (nonatomic, copy) NSString *name;
 
 /*
+ Underlying attributed version of the "name" property. Setting this property will change the
+ value of the "name" property and vice-versa.
+ */
+@property (nonatomic, copy) NSAttributedString *attributedName API_AVAILABLE(ios(11.0), tvos(11.0));
+
+/*
  The object that will perform the action.
  */
 @property (nullable, nonatomic, weak) id target;
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityCustomRotor.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityCustomRotor.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityCustomRotor.h	2016-09-23 21:43:02.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityCustomRotor.h	2017-05-27 22:37:30.000000000 -0400
@@ -48,16 +74,27 @@
 NS_CLASS_AVAILABLE_IOS(10_0) @interface UIAccessibilityCustomRotor : NSObject
 
 - (instancetype)initWithName:(NSString *)name itemSearchBlock:(UIAccessibilityCustomRotorSearch)itemSearchBlock;
+- (instancetype)initWithAttributedName:(NSAttributedString *)attributedName itemSearchBlock:(UIAccessibilityCustomRotorSearch)itemSearchBlock API_AVAILABLE(ios(11.0), tvos(11.0));
+- (instancetype)initWithSystemType:(UIAccessibilityCustomSystemRotorType)type itemSearchBlock:(UIAccessibilityCustomRotorSearch)itemSearchBlock NS_AVAILABLE_IOS(11_0);
 
 // The localized name the assistive technology will use to describe the custom rotor.
 @property (nonatomic, copy) NSString *name;
 
+// Underlying attributed version of the "name" property. Setting this property will change the
+// value of the "name" property and vice-versa.
+@property (nonatomic, copy) NSAttributedString *attributedName API_AVAILABLE(ios(11.0), tvos(11.0));
+
 // A block that takes a UIAccessibilityCustomRotorItemResult and the search direction and returns the next/previous instance of that rotor item.
 // If the currentItem is nil, that implies the first/last item should be returned.
 @property (nonatomic, copy) UIAccessibilityCustomRotorSearch itemSearchBlock;
 
+// The system rotor type that was optionally used during initialization.
+// default = UIAccessibilityCustomSystemRotorTypeNone
+@property (nonatomic, readonly) UIAccessibilityCustomSystemRotorType systemRotorType;
+
 @end
 
+
 NS_CLASS_AVAILABLE_IOS(10_0) @interface UIAccessibilityCustomRotorItemResult : NSObject
 
 - (instancetype)initWithTargetElement:(id<NSObject>)targetElement targetRange:(nullable UITextRange *)targetRange;
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityLocationDescriptor.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityLocationDescriptor.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityLocationDescriptor.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIAccessibilityLocationDescriptor.h	2017-05-30 01:57:28.000000000 -0400
@@ -0,0 +1,63 @@
+//
+//  UIAccessibilityLocationDescriptor.h
+//  UIKit
+//
+//  Copyright (c) 2017 Apple Inc. All rights reserved.
+//
+
+
+#import <UIKit/UIKitDefines.h>
+#import <UIKit/UIView.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/*
+ * UIAccessibilityLocationDescriptor objects are used to describe to assistive
+ * technologies points of interest within a view; where they are and how an assistive technology
+ * should describe them. For example, the `accessibilityDragSourceDescriptors` and
+ * `accessibilityDropPointDescriptors` properties in the UIAccessibilityDragging informal protocol
+ * use UIAccessibilityLocationDescriptor objects to describe where drags may begin and end.
+ */
+UIKIT_EXTERN API_AVAILABLE(ios(11.0)) API_UNAVAILABLE(watchos, tvos) @interface UIAccessibilityLocationDescriptor : NSObject
+
+- (instancetype)init NS_UNAVAILABLE;
++ (instancetype)new NS_UNAVAILABLE;
+
+/* Convenience initializer that uses the view's accessibilityActivationPoint. (This point will be
+ * converted to the coordinate space of the view).
+ *
+ * Note that by default, the accessibilityActivationPoint of a view is its center.
+ */
+- (instancetype)initWithName:(NSString *)name view:(UIView *)view;
+
+/* Provide the view, the point in that view's coordinate space that is of interest, and a name to
+ * use to describe it to the user.
+ */
+- (instancetype)initWithName:(NSString *)name point:(CGPoint)point inView:(UIView *)view;
+- (instancetype)initWithAttributedName:(NSAttributedString *)attributedName point:(CGPoint)point inView:(UIView *)view NS_DESIGNATED_INITIALIZER;
+
+/* The view in which the described point resides.
+ *
+ * This property is weak to make it simple to avoid reference cycles. Descriptors whose views have
+ * been deallocated (or are no longer in a visible window, or are obscured) will be silently
+ * ignored. That said, you should still clean up after yourself.
+ */
+@property (nonatomic, readonly, weak) UIView *view;
+
+/* The point in the view that is being described. The point is in the view's coordinate space.
+ */
+@property (nonatomic, readonly) CGPoint point;
+
+/* The "name" property and initializer are conveniences for referring to the "attributedName"
+ * property, which is the real underlying property.
+ */
+@property (nonatomic, readonly, strong) NSString *name;
+
+/* Assistive technologies will use the attributedName of the descriptor when describing it to the
+ * user (for instance, VoiceOver will speak it).
+ */
+@property (nonatomic, readonly, strong) NSAttributedString *attributedName;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIContentSizeCategory.h /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIContentSizeCategory.h
--- /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIContentSizeCategory.h	2016-09-23 21:43:02.000000000 -0400
+++ /Applications/Xcode9-beta1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIContentSizeCategory.h	2017-05-30 01:57:27.000000000 -0400
@@ -34,4 +34,7 @@
 UIKIT_EXTERN NSNotificationName const UIContentSizeCategoryDidChangeNotification NS_AVAILABLE_IOS(7_0); // userInfo dictionary will contain new value for UIContentSizeCategoryNewValueKey
 UIKIT_EXTERN NSString *const UIContentSizeCategoryNewValueKey NS_AVAILABLE_IOS(7_0); // NSString instance with new content size category in userInfo
 
+UIKIT_EXTERN BOOL UIContentSizeCategoryIsAccessibilityCategory(UIContentSizeCategory category) API_AVAILABLE(ios(11.0),tvos(11.0),watchos(4.0)) NS_REFINED_FOR_SWIFT;
+UIKIT_EXTERN NSComparisonResult UIContentSizeCategoryCompareToCategory(UIContentSizeCategory lhs, UIContentSizeCategory rhs) API_AVAILABLE(ios(11.0),tvos(11.0),watchos(4.0)) NS_REFINED_FOR_SWIFT;
+
 NS_ASSUME_NONNULL_END
Clone this wiki locally