Skip to content

AppKit macOS xcode15.0 b2

Manuel de la Pena edited this page Aug 17, 2023 · 3 revisions

#AppKit.framework https://github.com/xamarin/xamarin-macios/pull/18762

diff -ruN /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/AppKit.apinotes /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/AppKit.apinotes
--- /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/AppKit.apinotes	2023-05-31 08:52:20
+++ /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/AppKit.apinotes	2023-06-14 23:52:18
@@ -5245,6 +5245,9 @@
   - Name: textColor
     PropertyKind: Class
     SwiftName: textColor
+  - Name: textInsertionPointColor
+    PropertyKind: Class
+    SwiftName: textInsertionPointColor
   - Name: underPageBackgroundColor
     PropertyKind: Class
     SwiftName: underPageBackgroundColor
@@ -9068,6 +9071,8 @@
   SwiftName: defaultAttributes
 - Name: NSDefaultTabIntervalDocumentAttribute
   SwiftName: defaultTabInterval
+- Name: NSDefaultFontExcludedDocumentAttribute
+  SwiftName: defaultFontExcluded
 - Name: NSDefaultTokenStyle
   Availability: nonswift
 - Name: NSDefinitionPresentationTypeKey
diff -ruN /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAttributedString.h /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAttributedString.h
--- /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAttributedString.h	2023-05-31 09:13:48
+++ /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSAttributedString.h	2023-06-15 00:37:16
@@ -188,6 +188,7 @@
 APPKIT_EXTERN NSAttributedStringDocumentAttributeKey NSExcludedElementsDocumentAttribute;  // for HTML writing only; NSArray containing NSStrings, representing HTML elements not to be used in generated HTML
 APPKIT_EXTERN NSAttributedStringDocumentAttributeKey NSTextEncodingNameDocumentAttribute;  // for HTML writing only; NSString containing the name, IANA or otherwise, of a text encoding to be used; mutually exclusive with NSCharacterEncodingDocumentAttribute
 APPKIT_EXTERN NSAttributedStringDocumentAttributeKey NSPrefixSpacesDocumentAttribute;  // for HTML writing only; NSNumber containing integer, default 0, representing the number of spaces per level by which to indent certain nested HTML elements
+APPKIT_EXTERN NSAttributedStringDocumentAttributeKey const NSDefaultFontExcludedDocumentAttribute API_AVAILABLE(macos(14), ios(17), watchos(10), tvos(17)); // for HTML writing only; NSNumber containing a BOOL, when true the HTML writer will not include font information unless specified.
 
 // Document text scaling
 // They are document attributes used by read/write methods.
diff -ruN /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputClient.h /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputClient.h
--- /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputClient.h	2023-05-31 09:13:46
+++ /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputClient.h	2023-06-15 00:37:14
@@ -17,6 +17,18 @@
 
 @class NSAttributedString;
 
+typedef NS_ENUM(NSInteger, NSTextCursorAccessoryPlacement) {
+    NSTextCursorAccessoryPlacementUnspecified,
+    NSTextCursorAccessoryPlacementBackward,   // up side for horizontal text, right side for vertical text
+    NSTextCursorAccessoryPlacementForward,    // down side for horizontal text, left side for horizontal text
+    NSTextCursorAccessoryPlacementInvisible,  // hide
+    NSTextCursorAccessoryPlacementCenter, // centered above selected text
+    NSTextCursorAccessoryPlacementOffscreenLeft, // show left edge of visible rect with ←
+    NSTextCursorAccessoryPlacementOffscreenTop,  // show top edge of visible rect with ↑
+    NSTextCursorAccessoryPlacementOffscreenRight, // show right edge of visible rect with →
+    NSTextCursorAccessoryPlacementOffscreenBottom // show bottom edge of visible rect with ↓
+} API_AVAILABLE(macos(14.0));
+
 @protocol NSTextInputClient
 @required
 /* The receiver inserts string replacing the content specified by replacementRange. string can be either an NSString or NSAttributedString instance.
@@ -83,6 +95,23 @@
 /* Returns if the marked text is in vertical layout.
  */
 - (BOOL)drawsVerticallyForCharacterAtIndex:(NSUInteger)charIndex API_AVAILABLE(macos(10.6));
+
+/* Return the placement of cursor accessory. If this isn't provided, it's assumed as `NSTextCursorAccessoryPlacementUnspecified`.
+ */
+- (NSTextCursorAccessoryPlacement)preferredTextAccessoryPlacement;
+
+/* Return rect which covers whole selected text in screen coordinate. If this method isn't provided, -selectedRange + -firstRectForCharRange:actualRange: will be used.
+
+ To support dictation indicator on custom text view, expose this method and `-documentVisibleRect`, and also calls `-[NSTextInputContext willStartScrollingOrZooming]`/ `-[NSTextInputContext didEndScrollingOrZooming]` when needed.
+ */
+@property (readonly) NSRect selectionRect API_AVAILABLE(macos(14.0));
+
+/* Return visible rect of document area in screen coordinate. If this method isn't provided, -[NSView  visibleRect] will be used.
+
+ To support dictation indicator on custom text view, expose this method and `-selectionRect`, and also calls `-[NSTextInputContext willStartScrollingOrZooming]`/ `-[NSTextInputContext didEndScrollingOrZooming]` when needed.
+ */
+@property (readonly) NSRect documentVisibleRect API_AVAILABLE(macos(14.0));
+
 @end
 
 API_UNAVAILABLE_END
diff -ruN /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputContext.h /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputContext.h
--- /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputContext.h	2023-05-31 09:13:48
+++ /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputContext.h	2023-06-15 00:37:16
@@ -62,6 +62,16 @@
  */
 - (void)invalidateCharacterCoordinates;
 
+/* Notifies the text input client will be continuous updated due to user action. This includes scrolling, resizing, zooming, and any other action modifying the the geometry information of text selection while displaying the content.
+
+    This method should be called before -invalidateCharacterCoordinates.
+ */
+- (void)textInputClientWillStartScrollingOrZooming API_AVAILABLE(macos(14.0));
+
+/* Notifies the text input client was continuous updated due to user action. This includes scrolling, resizing, zooming, and any other action modifying the the geometry information of text selection while displaying the content.
+
+  This method should be called after -invalidateCharacterCoordinates. */
+- (void)textInputClientDidEndScrollingOrZooming API_AVAILABLE(macos(14.0));
 
 /**** Text Input sources handling ****/
 /* Text Input source handling API identifies text input sources with text input source identifier strings (i.e. "com.apple.inputmethod.Kotoeri.Japanese") supplied by the underlying TextInputSources framework. The ID corresponds to the kTISPropertyInputSourceID attribute.
diff -ruN /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInsertionIndicator.h /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInsertionIndicator.h
--- /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInsertionIndicator.h	2023-05-31 09:13:44
+++ /Applications/Xcode_15.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInsertionIndicator.h	2023-06-15 00:37:13
@@ -10,24 +10,24 @@
 APPKIT_API_UNAVAILABLE_BEGIN_MACCATALYST
 NS_HEADER_AUDIT_BEGIN(nullability, sendability)
 
-API_AVAILABLE(macos(14.0))
-typedef NS_ENUM(NSUInteger, NSInsertionIndicatorDisplayMode) {
+typedef NS_ENUM(NSInteger, NSTextInsertionIndicatorDisplayMode) {
     NSTextInsertionIndicatorDisplayModeAutomatic = 0,  // Automatically stops and starts blinking during typing and dictation.
     NSTextInsertionIndicatorDisplayModeHidden,
     NSTextInsertionIndicatorDisplayModeVisible,
-} NS_SWIFT_NAME(NSTextInsertionIndicator.DisplayMode);
+} NS_SWIFT_NAME(NSTextInsertionIndicator.DisplayMode) API_AVAILABLE(macos(14.0));
 
-API_AVAILABLE(macos(14.0))
-typedef NS_OPTIONS(NSUInteger, NSTextInsertionIndicatorAutomaticModeOptions) {
+typedef NSTextInsertionIndicatorDisplayMode NSInsertionIndicatorDisplayMode API_DEPRECATED("", macos(14.0,14.0));
+
+typedef NS_OPTIONS(NSInteger, NSTextInsertionIndicatorAutomaticModeOptions) {
     NSTextInsertionIndicatorAutomaticModeOptionsShowEffectsView   = 1 << 0,
     NSTextInsertionIndicatorAutomaticModeOptionsShowWhileTracking  = 1 << 1,
-} NS_SWIFT_NAME(NSTextInsertionIndicator.AutomaticModeOptions);
+} NS_SWIFT_NAME(NSTextInsertionIndicator.AutomaticModeOptions) API_AVAILABLE(macos(14.0));
 
 API_AVAILABLE(macos(14.0))
 @interface NSTextInsertionIndicator : NSView
 
 /// Sets-returns the indicator's display mode.
-@property NSInsertionIndicatorDisplayMode displayMode;
+@property NSTextInsertionIndicatorDisplayMode displayMode;
 
 /// The color of the indicator.
 /// @discussion Defaults to the system accent color.
Clone this wiki locally