-
Notifications
You must be signed in to change notification settings - Fork 516
UIKit tvOS xcode16.2 b2
Alex Soto edited this page Nov 6, 2024
·
2 revisions
#UIKit.framework
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSAttributedString.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSAttributedString.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSAttributedString.h 2024-10-10 00:01:31
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/NSAttributedString.h 2024-10-31 02:13:03
@@ -52,6 +52,9 @@
UIKIT_EXTERN NSAttributedStringKey const NSAdaptiveImageGlyphAttributeName API_AVAILABLE(macos(15.0), ios(18.0), tvos(18.0), watchos(11.0), visionos(2.0)); // NSAdaptiveImageGlyph, default nil
+// NSNumber (Boolean) value. Default is false. The range of text with NSWritingToolsExclusionAttributeName=true is excluded from the WritingTools processing and preserved.
+UIKIT_EXTERN NSAttributedStringKey const NSWritingToolsExclusionAttributeName API_AVAILABLE(ios(18.2), macos(15.2)) API_UNAVAILABLE(visionos, tvos, watchos);
+
/************************ Attribute values ************************/
// This defines currently supported values for NSUnderlineStyleAttributeName and NSStrikethroughStyleAttributeName. These values are or'ed together to produce an underline style.
// Underlines will be drawn with a solid pattern by default, so NSUnderlineStylePatternSolid does not need to be specified.
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h 2024-10-10 00:07:05
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIApplication.h 2024-10-26 10:40:12
@@ -507,6 +507,9 @@
UIKIT_EXTERN NSString *const UIApplicationOpenSettingsURLString API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(watchos) NS_SWIFT_NONISOLATED;
+/// The URL string you use to deep link to settings for default app selection in the Settings app.
+UIKIT_EXTERN NSString *const UIApplicationOpenDefaultApplicationsSettingsURLString API_AVAILABLE(ios(18.3)) API_UNAVAILABLE(watchos) NS_SWIFT_NONISOLATED;
+
#if __swift__
UIKIT_EXTERN NSString *const UIApplicationOpenNotificationSettingsURLString API_DEPRECATED_WITH_REPLACEMENT("UIApplication.openNotificationSettingsURLString", ios(15.4, 16.0), visionos(1.0, 1.0)) NS_SWIFT_NONISOLATED;
#else
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h 2024-10-10 00:06:28
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIBarButtonItem.h 2024-10-26 11:36:02
@@ -50,7 +50,8 @@
UIBarButtonSystemItemUndo API_AVAILABLE(ios(3.0)),
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)
+ UIBarButtonSystemItemClose API_AVAILABLE(ios(13.0)) API_UNAVAILABLE(tvos, watchos),
+ UIBarButtonSystemItemWritingTools API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos) API_UNAVAILABLE(tvos, watchos)
} API_UNAVAILABLE(watchos);
@class UIImage, UIView;
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFoundation.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFoundation.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFoundation.h 2024-10-09 23:44:08
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIFoundation.h 2024-10-26 17:27:20
@@ -10,7 +10,7 @@
#import <UIKit/NSTextAttachment.h>
#import <UIKit/NSAdaptiveImageGlyph.h>
-#if !TARGET_OS_WATCH || (__has_include(<UIKit/NSTextElement.h>))
+#if !TARGET_OS_WATCH || __has_include(<UIKit/NSTextElement.h>)
#import <UIKit/NSTextElement.h>
#import <UIKit/NSTextSelection.h>
#import <UIKit/NSTextSelectionNavigation.h>
@@ -20,4 +20,4 @@
#import <UIKit/NSTextLayoutManager.h>
#import <UIKit/NSTextLineFragment.h>
#import <UIKit/NSTextListElement.h>
-#endif
+#endif /* !TARGET_OS_WATCH || __has_include(<UIKit/NSTextElement.h>) */
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.apinotes /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.apinotes
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.apinotes 2024-10-09 23:34:56
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.apinotes 2024-10-26 15:16:08
@@ -2077,6 +2077,8 @@
SwiftName: NSAttributedString.TextLayoutSectionKey
- Name: NSTextTabOptionKey
SwiftName: NSTextTab.OptionKey
+- Name: NSWritingToolsExclusionAttributeName
+ SwiftName: writingToolsExclusion
- Name: UIFontDescriptorAttributeName
SwiftName: UIFontDescriptor.AttributeName
- Name: UIFontDescriptorTraitKey
@@ -2692,6 +2694,8 @@
SwiftName: UIFloatRange.infinite
- Name: UIApplicationOpenSettingsURLString
SwiftName: UIApplication.openSettingsURLString
+- Name: UIApplicationOpenDefaultApplicationsSettingsURLString
+ SwiftName: UIApplication.openDefaultApplicationsSettingsURLString
- Name: UIStateRestorationViewControllerStoryboardKey
SwiftName: UIApplication.stateRestorationViewControllerStoryboardKey
- Name: UIApplicationStateRestorationBundleVersionKey
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h 2024-09-29 02:19:59
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h 2024-10-26 11:35:49
@@ -384,4 +384,7 @@
#import <UIKit/UITextFormattingViewControllerConfiguration.h>
#import <UIKit/UITextFormattingViewControllerComponent.h>
#import <UIKit/UITextFormattingViewControllerFormattingDescriptor.h>
+#import <UIKit/UIWritingToolsCoordinator.h>
+#import <UIKit/UIWritingToolsCoordinatorContext.h>
+#import <UIKit/UIWritingToolsCoordinatorAnimationParameters.h>
#endif
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIResponder.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIResponder.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIResponder.h 2024-10-10 00:51:28
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIResponder.h 2024-10-30 01:35:43
@@ -62,6 +62,8 @@
- (void)move:(nullable id)sender API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos);
- (void)export:(nullable id)sender API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos);
+- (void)showWritingTools:(id)sender API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos);
+
@end
UIKIT_EXTERN API_AVAILABLE(ios(2.0)) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h 2024-10-03 23:53:43
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h 2024-10-26 10:40:08
@@ -264,8 +264,8 @@
- (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);
+- (void)willPresentWritingTools API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (void)didDismissWritingTools API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
@end
//---------------------------------------------------------------------------------------------------
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h 2024-10-10 00:01:24
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h 2024-10-30 01:35:45
@@ -186,7 +186,7 @@
/// The limited, overlay-panel experience will be provided if possible.
UIWritingToolsBehaviorLimited,
-} API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+} API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
//
// UIWritingToolsResultOptions
@@ -208,7 +208,7 @@
/// 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, tvos, watchos);
+} API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
typedef NSString * UITextContentType NS_TYPED_ENUM API_UNAVAILABLE(watchos);
@@ -262,8 +262,8 @@
// on the Password Rules documentation guide.
@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(visionos, tvos, watchos);
-@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
@end
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h 2024-10-10 00:01:31
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h 2024-10-31 02:15:11
@@ -24,7 +24,7 @@
NS_HEADER_AUDIT_BEGIN(nullability, sendability)
-@class UIFindInteraction, UIFont, UIColor, UIMenu, UIMenuElement, UITextView, NSTextContainer, NSTextLayoutManager, NSLayoutManager, NSTextStorage, NSTextAttachment, UITextItem, UITextItemMenuConfiguration, NSTextRange, UITextFormattingViewController, UITextFormattingViewControllerConfiguration;
+@class UIFindInteraction, UIFont, UIColor, UIMenu, UIMenuElement, UITextView, NSTextContainer, NSTextLayoutManager, NSLayoutManager, NSTextStorage, NSTextAttachment, UITextItem, UITextItemMenuConfiguration, NSTextRange, UITextFormattingViewController, UITextFormattingViewControllerConfiguration, UIWritingToolsCoordinator;
@protocol UIEditMenuInteractionAnimating, UIContextMenuInteractionAnimating;
API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
@@ -116,14 +116,14 @@
*
* @param textView The text view interacting with Writing Tools
*/
-- (void)textViewWritingToolsWillBegin:(UITextView *)textView API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (void)textViewWritingToolsWillBegin:(UITextView *)textView API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
/**
* @abstract Informs the delegate that Writing Tools has finished manipulating the text view
*
* @param textView The text view interacting with Writing Tools
*/
-- (void)textViewWritingToolsDidEnd:(UITextView *)textView API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (void)textViewWritingToolsDidEnd:(UITextView *)textView API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
/**
* @abstract Allows the delegate to specify ranges of text to be ignored by Writing Tools
@@ -133,7 +133,7 @@
*
* @return Return an array of ranges in the attributed substring of the textView storage with the enclosing range representing portions of text to be ignored by Writing Tools when evaluating the text for proofreading, summarization, rewrites, and so forth.
*/
-- (NSArray<NSValue *> *)textView:(UITextView *)textView writingToolsIgnoredRangesInEnclosingRange:(NSRange)enclosingRange API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (NSArray<NSValue *> *)textView:(UITextView *)textView writingToolsIgnoredRangesInEnclosingRange:(NSRange)enclosingRange API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange interaction:(UITextItemInteraction)interaction API_DEPRECATED("Replaced by primaryActionForTextItem: and menuConfigurationForTextItem: for additional customization options.", ios(10.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
@@ -264,13 +264,15 @@
*
* @return Returns @c YES while Writing Tools is interacting with the receiver (after @c -textViewWritingToolsWillBegin: completes until @c -textViewWritingToolsDidEnd: completes)
*/
-@property(nonatomic,readonly,getter=isWritingToolsActive) BOOL writingToolsActive API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+@property(nonatomic,readonly,getter=isWritingToolsActive) BOOL writingToolsActive API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
// Also see UITextInputTraits.h
-@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0), macos(15.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, 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, tvos, watchos);
+@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+
+@property(nonatomic,readonly) UIWritingToolsCoordinator *writingToolsCoordinator API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos);
/// For text views that have flag `allowsEditingTextAttributes` set,
/// this configuration will be used for `UITextFormattingViewController`
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinator.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinator.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinator.h 1969-12-31 19:00:00
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinator.h 2024-10-26 11:32:45
@@ -0,0 +1,192 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIWritingToolsCoordinator.h>)
+//
+// UIWritingToolsCoordinator.h
+// UIKit
+//
+// Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIInteraction.h>
+#import <UIKit/UITextInputTraits.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+@protocol UIWritingToolsCoordinatorDelegate;
+
+typedef NS_ENUM(NSInteger, UIWritingToolsCoordinatorTextUpdateReason) {
+ UIWritingToolsCoordinatorTextUpdateReasonTyping,
+ UIWritingToolsCoordinatorTextUpdateReasonUndoRedo,
+ // Others? Paste?
+} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextUpdateReason);
+
+typedef NS_ENUM(NSInteger, UIWritingToolsCoordinatorState) {
+ // Open question: Do we also want a `Disabled` state?
+ UIWritingToolsCoordinatorStateInactive, // Writing Tools is not active
+ UIWritingToolsCoordinatorStateNoninteractive, // Writing Tools is presenting UI, and the WTC may call the -writingToolsCoordinator:replaceRange:inContext:withText:reason: delegate method (with UIWritingToolsCoordinatorContextRequestReasonNoninteractive) if the textual view is editable
+ UIWritingToolsCoordinatorStateInteractiveResting, // Writing Tools is providing the full inline-editing experience, and has delivered a complete set of results.
+ UIWritingToolsCoordinatorStateInteractiveStreaming, // Writing Tools is providing the full inline-editing experience, and is updating text, either because results are provided from AppleIntelligence, or because user interaction has requested changes, such as showing a different revision
+} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.State);
+
+
+// MARK: - Coordinator
+//
+
+UIKIT_EXTERN API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_UI_ACTOR
+@interface UIWritingToolsCoordinator : NSObject <UIInteraction>
+
+@property (class, nonatomic, assign, readonly) BOOL isWritingToolsAvailable;
+
+// The delegate must be non-nil before the writingToolsCoodinator is added to a view
+
+// Convenience initializer
+- (instancetype)initWithDelegate:(nullable id <UIWritingToolsCoordinatorDelegate>)delegate;
+@property(nonatomic,weak,nullable,readonly) id<UIWritingToolsCoordinatorDelegate> delegate;
+
+// Note: The effectContainerView and decorationContainerView may only be changed when UIWritingToolsCoordinator.State is .inactive, otherwise the setters will throw an exception
+
+// The system draws the shimmering rainbow text effects in the effectContainerView.
+// Defaults to UIWritingToolsCoordinator.view.
+// This view must be placed in front of all text.
+@property(nonatomic,weak) UIView *effectContainerView;
+
+// The system draws underline and highlight decorations for proofreading suggestions in the decorationContainerView.
+// Defaults to UIWritingToolsCoordinator.view.
+// Ideally, this view should be placed behind all text but in front of any background coloring
+// If it's not possible to place this view behind the text, it's satisfactory to place it in front.
+@property(nonatomic,weak) UIView *decorationContainerView;
+
+// Indicates whether or not Writing Tools is active, and if so, what kind of activity
+@property(nonatomic,readonly) UIWritingToolsCoordinatorState state; // Values: Inactive, Noninteractive, InteractiveResting, InteractiveStreaming
+
+// Clients may cancel Writing Tools if external events occur such that further input
+// from Writing Tools is not supportable, and then UIWritingToolsCoordinator will change
+// to the Inactive state.
+// Also see UIResponder.startWritingTools.
+- (void)stopWritingTools;
+
+@property(nonatomic) UIWritingToolsBehavior preferredBehavior; // Defaults to "Default"
+@property(nonatomic,readonly) UIWritingToolsBehavior behavior; // Returns Inactive, Limited, or Complete after considering system information along with the value of preferredBehavior
+
+@property(nonatomic) UIWritingToolsResultOptions preferredResultOptions; // Defaults to "Default"
+@property(nonatomic,readonly) UIWritingToolsResultOptions resultOptions; // Returns a nonzero value after considering system information along with the value of preferredResultOptions
+
+// Inform coordinator about other text changes
+// The textual view is expected to inform the writing tools coordinator about changes that occur while Writing Tools is active
+// range.location is an offset from the beginning of the resolvedRange
+- (void)updateRange:(NSRange)range withText:(NSAttributedString *)replacementText reason:(UIWritingToolsCoordinatorTextUpdateReason)reason forContextWithIdentifier:(NSUUID *)contextID NS_SWIFT_NAME(updateRange(_:with:reason:forContextWithIdentifier:));
+
+// Inform coordinator when text reflows affecting the context without changing the text within the context
+// For example, user typing in the same textual storage preceding the context's text or geometric changes of the view
+// This will be needed to maintain the correct position of proofreading decorations, among other things
+- (void)updateForReflowedTextInContextWithIdentifier:(NSUUID *)contextID NS_SWIFT_NAME(updateForReflowedTextInContextWithIdentifier(_:));
+@end
+
+// MARK: - Delegate
+//
+#if !TARGET_OS_WATCH
+@class UITargetedPreview;
+#endif
+@class UIWritingToolsCoordinatorContext, UIWritingToolsCoordinatorAnimationParameters, UIBezierPath, UIView;
+
+typedef NS_ENUM(NSInteger, UIWritingToolsCoordinatorTextReplacementReason) {
+ UIWritingToolsCoordinatorTextReplacementReasonInteractive, // animating a chunk from a proofreading or rewrite inline delivery
+ UIWritingToolsCoordinatorTextReplacementReasonNoninteractive, // an unanimated replacement prompted from writing tools, perhaps copied from the overlay-panel experience, perhaps a reverted rewrite or individual proofreading suggestion, and so forth
+} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextReplacementReason);
+
+typedef NS_ENUM(NSInteger, UIWritingToolsCoordinatorContextRequestReason) {
+ UIWritingToolsCoordinatorContextRequestReasonInteractive, // inline editing on a user selection; Writing Tools visual effects appear within the text view
+ UIWritingToolsCoordinatorContextRequestReasonInteractiveFull, // full document is needed independent of user selection, for Writing Tools to, for example, create additional text; Writing Tools visual effects appear within the text view
+ UIWritingToolsCoordinatorContextRequestReasonNoninteractive, // overlay panel support for a user selection; Writing Tools visual effects appear within the overlay panel
+ UIWritingToolsCoordinatorContextRequestReasonNoninteractiveFull, // overlay panel support for Writing Tools operations that require full document for evaluation, for example, creating additional text; Writing Tools visual effects appear within the overlay panel
+} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.ContextRequestReason);
+
+typedef NS_ENUM(NSInteger, UIWritingToolsCoordinatorTextAnimation) {
+ UIWritingToolsCoordinatorTextAnimationAnticipate, // The animation effect for the text awaiting the results of the Writing Tools evaluation
+ UIWritingToolsCoordinatorTextAnimationRemove, // The animation effect for washing out text that will be replaced by a Writing Tools delivery
+ UIWritingToolsCoordinatorTextAnimationInsert, // The amimation effect for washing in replacement text from a Writing Tools delivery
+} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextAnimation);
+
+UIKIT_EXTERN
+API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos)
+NSString *UIWritingToolsCoordinatorTextAnimationDebugDescription(UIWritingToolsCoordinatorTextAnimation animationType);
+
+API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos)
+NS_SWIFT_NAME(UIWritingToolsCoordinator.Delegate)
+@protocol UIWritingToolsCoordinatorDelegate <NSObject>
+// Called for every use of Writing Tools, followed by `-writingToolsCoordinator:willChangeToState:`.
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsContextsForReason:(UIWritingToolsCoordinatorContextRequestReason)reason completion:(void(^)(NSArray<UIWritingToolsCoordinatorContext *> *))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:contextsFor:));
+
+// range.location is an offset from the beginning of the resolvedRange
+// Return nil in the block if the proposed text is accepted, otherwise pass the actual replacement text used.
+// The animation parameters will be non-nil with UIWritingToolsCoordinatorTextReplacementReasonInteractive. In this case,
+// the client may set the UIWritingToolsCoordinatorAnimationParameters's progressHandler and completionHandler
+// blocks to animate reflowing the text following the replacement (if possible)
+// or at least time the change to avoid overlapping text
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator replaceRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context proposedText:(NSAttributedString *)replacementText reason:(UIWritingToolsCoordinatorTextReplacementReason)reason animationParameters:(UIWritingToolsCoordinatorAnimationParameters *__nullable)animationParameters completion:(void(^)(NSAttributedString *__nullable))completion;
+
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator selectRanges:(NSArray<NSValue * /* NSRange */> *)ranges inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(void))completion NS_SWIFT_NAME(writingToolsCoordinator(_:select:in:completion:));
+
+// tap support (for proofreading inline flow)
+// return range of a single character where range.location is an offset from the beginning of the resolvedRange
+// or range with location NSNotFound if point is outside current text.
+// point is in the coordinate space of writingToolsCoordinator.view (the UIInteraction property)
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsRangeInContextWithIdentifierForPoint:(CGPoint)point completion:(void(^)(NSRange range, NSUUID *contextID))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:rangeInContextWithIdentifierFor:));
+
+// For proofreading flow
+// range.location is an offset from the beginning of the resolvedRange
+// return bezier paths in the coordinate space of decorationsContainerView
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsBoundingBezierPathsForRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(NSArray<UIBezierPath *> *))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:boundingBezierPathsFor:context:));
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsUnderlinePathsForRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(NSArray<UIBezierPath *> *))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:underlinePathsFor:context:));
+
+//
+// Animation support
+//
+// range.location is an offset from the beginning of the resolvedRange throughout. Expected to match textual view's text storage, presuming client has been updating as expected through the text delegate replaceRange
+
+// The client is expected to hide the range of text, and if supporting animating reflow of following text for UIWritingToolsCoordinatorTextAnimationInsert and UIWritingToolsCoordinatorTextAnimationRemove, do any setup necessary.
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator prepareForTextAnimation:(UIWritingToolsCoordinatorTextAnimation)textAnimation forRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(void))completion;
+
+#if TARGET_OS_WATCH // {
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsPreviewForTextAnimation:(UIWritingToolsCoordinatorTextAnimation)textAnimation ofRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(UIView * _Nullable))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:previewFor:range:context:));
+#else // } {
+// For a given value of UIWritingToolsCoordinatorTextAnimation, this method is called before prepareForTextAnimation
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsPreviewForTextAnimation:(UIWritingToolsCoordinatorTextAnimation)textAnimation ofRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(UITargetedPreview * _Nullable))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:previewFor:range:context:));
+#endif // }
+
+// The client is expected to ensure that all text is visible, and clean up any setup performed in prepareForTextAnimation
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator finishTextAnimation:(UIWritingToolsCoordinatorTextAnimation)textAnimation forRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(void))completion;
+
+@optional
+
+// Multiple container support
+
+// Return an array of connected subranges whose union is range
+// and where each subrange is within a single text container
+// -writingToolsCoordinator:requestsPreviewForTextAnimation:ofRange:inContext:completion:
+// will be called for each subrange.
+// The UITargetedPreview's previewTarget's container will be used for a coordinate conversion into the effectContainerView
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsSingleContainerSubrangesOfRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(NSArray<NSValue */*NSRange*/> *))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:singleContainerSubrangesOf:in:));
+
+// Return the decoration container view associated with the range.
+// This will be called for each subrange returned from -writingToolsCoordinator:requestsSingleContainerSubrangesOfRange:inContext: when that method is implemented
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsDecorationContainerViewForRange:(NSRange)range inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(UIView *))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:decorationContainerViewFor:in:));
+
+// Lifecycle
+
+// Possible state changes
+// Inactive -> Noninteractive
+// Noninteractive -> Inactive
+// Inactive -> InteractiveResting
+// InteractiveResting -> InteractiveStreaming
+// InteractiveResting -> Inactive
+// InteractiveStreaming -> InteractiveResting
+// InteractiveStreaming -> Inactive
+
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator willChangeToState:(UIWritingToolsCoordinatorState)newState completion:(void(^)(void))completion;
+@end
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIWritingToolsCoordinator.h>
+#endif
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorAnimationParameters.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorAnimationParameters.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorAnimationParameters.h 1969-12-31 19:00:00
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorAnimationParameters.h 2024-10-26 11:36:02
@@ -0,0 +1,28 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIWritingToolsCoordinatorAnimationParameters.h>)
+//
+// UIWritingToolsCoordinatorAnimationParameters.h
+// UIKit
+//
+// Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIKitDefines.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+UIKIT_EXTERN API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_SENDABLE NS_SWIFT_NAME(UIWritingToolsCoordinator.AnimationParameters)
+@interface UIWritingToolsCoordinatorAnimationParameters : NSObject
+- (instancetype)init NS_UNAVAILABLE;
+
+@property(nonatomic,readonly) CGFloat duration;
+@property(nonatomic,readonly) CGFloat delay;
+@property(nonatomic,nullable,strong) void(^progressHandler)(float progress);
+@property(nonatomic,nullable,strong) void(^completionHandler)(void);
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIWritingToolsCoordinatorAnimationParameters.h>
+#endif
diff -ruN /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorContext.h /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorContext.h
--- /Applications/Xcode_16.1.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorContext.h 1969-12-31 19:00:00
+++ /Applications/Xcode_16.2.0-beta2.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorContext.h 2024-10-26 11:36:09
@@ -0,0 +1,30 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIWritingToolsCoordinatorContext.h>)
+//
+// UIWritingToolsCoordinatorContext.h
+// UIKit
+//
+// Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIKitDefines.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+UIKIT_EXTERN API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_SENDABLE NS_SWIFT_NAME(UIWritingToolsCoordinator.Context)
+@interface UIWritingToolsCoordinatorContext : NSObject
+- (instancetype)initWithAttributedString:(NSAttributedString *)attributedString range:(NSRange)range NS_DESIGNATED_INITIALIZER;
+- (instancetype)init NS_UNAVAILABLE;
+
+@property (copy, readonly) NSAttributedString *attributedString;
+@property (readonly) NSRange range; // The range it was initialized with
+
+@property (strong, readonly) NSUUID *identifier;
+@property (readonly) NSRange resolvedRange; // The range that Writing Tools ends up using (sometimes larger than range)
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIWritingToolsCoordinatorContext.h>
+#endif
- 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