Skip to content

Commit aea5fda

Browse files
authored
[AppKit/UIKit] Implement Xcode 16.2 beta 1-3 changes. (#21735)
1 parent b3f98e7 commit aea5fda

14 files changed

+572
-164
lines changed

src/UIKit/UIEnums.cs

+2
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ public enum UIBarButtonSystemItem : long {
122122
[iOS (13, 0), NoTV]
123123
[MacCatalyst (13, 1)]
124124
Close,
125+
[iOS (18, 2), NoTV, MacCatalyst (18, 2)]
126+
WritingTools,
125127
}
126128

127129
// NSUInteger -> UIControl.h

src/appkit.cs

+59-1
Original file line numberDiff line numberDiff line change
@@ -8635,6 +8635,9 @@ partial interface NSMenu : NSCoding, NSCopying, NSAccessibility, NSAccessibility
86358635
[Export ("selectedItems", ArgumentSemantic.Copy)]
86368636
NSMenuItem [] SelectedItems { get; set; }
86378637

8638+
[Mac (15, 2)]
8639+
[Export ("automaticallyInsertsWritingToolsItems")]
8640+
bool AutomaticallyInsertsWritingToolsItems { get; set; }
86388641
}
86398642

86408643
interface INSMenuDelegate { }
@@ -8805,6 +8808,11 @@ interface NSMenuItem : NSCoding, NSCopying, NSAccessibility, NSAccessibilityElem
88058808
[Mac (14, 4)]
88068809
[Export ("subtitle", ArgumentSemantic.Copy), NullAllowed]
88078810
string Subtitle { get; set; }
8811+
8812+
[Static]
8813+
[Mac (15, 2)]
8814+
[Export ("writingToolsItems", ArgumentSemantic.Copy)]
8815+
NSMenuItem [] WritingToolsItems { get; }
88088816
}
88098817

88108818
[NoMacCatalyst]
@@ -13730,7 +13738,7 @@ interface NSSavePanel {
1373013738

1373113739
[Deprecated (PlatformName.MacOSX, 10, 6, message: "Use Begin with the callback instead.")]
1373213740
[Export ("beginSheetForDirectory:file:modalForWindow:modalDelegate:didEndSelector:contextInfo:")]
13733-
void Begin (string directory, string filename, NSWindow docWindow, NSObject modalDelegate, Selector selector, IntPtr context);
13741+
void Begin ([NullAllowed] string directory, string filename, NSWindow docWindow, NSObject modalDelegate, Selector selector, IntPtr context);
1373413742

1373513743
[Deprecated (PlatformName.MacOSX, 10, 6, message: "Use RunModal without parameters instead.")]
1373613744
[Export ("runModalForDirectory:file:")]
@@ -15779,6 +15787,10 @@ interface NSStringAttributeKey {
1577915787
[Watch (11, 0), TV (18, 0), Mac (15, 0), iOS (18, 0), MacCatalyst (18, 0)]
1578015788
[Field ("NSAdaptiveImageGlyphAttributeName")]
1578115789
NSString AdaptiveImageGlyph { get; }
15790+
15791+
[TV (18, 2), Mac (15, 2), iOS (18, 2), MacCatalyst (18, 2)]
15792+
[Field ("NSWritingToolsExclusionAttributeName")]
15793+
NSString WritingToolsExclusion { get; }
1578215794
}
1578315795

1578415796
delegate NSObject NSStoryboardControllerCreator (NSCoder coder);
@@ -16999,6 +17011,14 @@ partial interface NSView : NSDraggingDestination, NSAnimatablePropertyContainer,
1699917011
[Mac (14, 0)]
1700017012
[Export ("displayLinkWithTarget:selector:")]
1700117013
CADisplayLink GetDisplayLink (NSObject target, Selector selector);
17014+
17015+
#if !__MACCATALYST__
17016+
// category NSWritingToolsCoordinator (NSView)
17017+
[NoMacCatalyst]
17018+
[NullAllowed, Export ("writingToolsCoordinator", ArgumentSemantic.Assign)]
17019+
[Mac (15, 2)]
17020+
NSWritingToolsCoordinator WritingToolsCoordinator { get; set; }
17021+
#endif
1700217022
}
1700317023

1700417024
[NoMacCatalyst]
@@ -18880,6 +18900,10 @@ NSTextContentType ContentType {
1888018900
[Wrap ("SetContentType (value.GetConstant()!)")]
1888118901
set;
1888218902
}
18903+
18904+
[Mac (15, 2)]
18905+
[Export ("allowsWritingTools")]
18906+
bool AllowsWritingTools { get; set; }
1888318907
}
1888418908

1888518909
[NoMacCatalyst]
@@ -20322,6 +20346,10 @@ partial interface NSToolbar {
2032220346
[Mac (15, 0), MacCatalyst (18, 0)]
2032320347
[Export ("removeItemWithItemIdentifier:")]
2032420348
void RemoveItem (string itemIdentifier);
20349+
20350+
[Mac (15, 2), MacCatalyst (18, 2)]
20351+
[Field ("NSToolbarWritingToolsItemIdentifier")]
20352+
NSString NSToolbarWritingToolsItemIdentifier { get; }
2032520353
}
2032620354

2032720355
interface INSToolbarDelegate { }
@@ -28811,4 +28839,34 @@ enum NSToolbarItemVisibilityPriority : long {
2881128839
High = 1000,
2881228840
User = 2000,
2881328841
}
28842+
28843+
[Category]
28844+
[BaseType (typeof (NSResponder))]
28845+
[Mac (15, 2), NoMacCatalyst]
28846+
interface NSResponder_NSWritingToolsSupport {
28847+
[Export ("showWritingTools:")]
28848+
void ShowWritingTools ([NullAllowed] NSObject sender);
28849+
}
28850+
28851+
[NoMacCatalyst, Mac (15, 2)]
28852+
[BaseType (typeof (NSObject))]
28853+
[DisableDefaultCtor]
28854+
interface NSTextPreview {
28855+
[Export ("initWithSnapshotImage:presentationFrame:candidateRects:")]
28856+
[DesignatedInitializer]
28857+
NativeHandle Constructor (CGImage snapshotImage, CGRect presentationFrame, [BindAs (typeof (CGRect []))] NSValue [] candidateRects);
28858+
28859+
[Export ("initWithSnapshotImage:presentationFrame:")]
28860+
NativeHandle Constructor (CGImage snapshotImage, CGRect presentationFrame);
28861+
28862+
[Export ("previewImage")]
28863+
CGImage PreviewImage { get; }
28864+
28865+
[Export ("presentationFrame")]
28866+
CGRect PresentationFrame { get; }
28867+
28868+
[Export ("candidateRects")]
28869+
[BindAs (typeof (CGRect []))]
28870+
NSValue [] CandidateRects { get; }
28871+
}
2881428872
}

src/foundation.cs

+10
Original file line numberDiff line numberDiff line change
@@ -4705,6 +4705,16 @@ interface NSError : NSSecureCoding, NSCopying {
47054705
[Field ("NSURLErrorBackgroundTaskCancelledReasonKey")]
47064706
NSString NSUrlErrorBackgroundTaskCancelledReasonKey { get; }
47074707
#endif
4708+
4709+
#if IOS && !MACCATALYST
4710+
[iOS (18, 2), NoMacCatalyst, NoTV, NoMac]
4711+
[Field ("UIApplicationCategoryDefaultRetryAvailabilityDateErrorKey", "UIKit")]
4712+
NSString UIApplicationCategoryDefaultRetryAvailabilityDateErrorKey { get; }
4713+
4714+
[iOS (18, 2), NoMacCatalyst, NoTV, NoMac]
4715+
[Field ("UIApplicationCategoryDefaultStatusLastProvidedDateErrorKey", "UIKit")]
4716+
NSString UIApplicationCategoryDefaultStatusLastProvidedDateErrorKey { get; }
4717+
#endif
47084718
}
47094719

47104720
delegate NSObject NSErrorUserInfoValueProvider (NSError error, NSString userInfoKey);

src/uikit.cs

+44
Original file line numberDiff line numberDiff line change
@@ -3025,6 +3025,10 @@ interface UIApplication {
30253025
[TV (17, 0), NoWatch, iOS (17, 0), MacCatalyst (17, 0)]
30263026
[Export ("activateSceneSessionForRequest:errorHandler:")]
30273027
void ActivateSceneSession (UISceneSessionActivationRequest request, [NullAllowed] Action<NSError> errorHandler);
3028+
3029+
[iOS (18, 2), MacCatalyst (18, 2), TV (18, 2)]
3030+
[Field ("UIApplicationOpenDefaultApplicationsSettingsURLString")]
3031+
NSString UIApplicationOpenDefaultApplicationsSettingsUrlString { get; }
30283032
}
30293033

30303034
/// <summary>Icon for a Quick Action shortcut, which appears in response to user-applied pressure.</summary>
@@ -12845,6 +12849,10 @@ interface UIResponderStandardEditActions {
1284512849
[TV (16, 0), iOS (16, 0), MacCatalyst (16, 0)]
1284612850
[Export ("useSelectionForFind:")]
1284712851
void UseSelectionForFind ([NullAllowed] NSObject sender);
12852+
12853+
[NoTV, iOS (18, 2), MacCatalyst (18, 2)]
12854+
[Export ("showWritingTools:")]
12855+
void ShowWritingTools ([NullAllowed] NSObject sender);
1284812856
}
1284912857

1285012858
#if !NET // These two methods are in the UIResponderStandardEditActions protocol
@@ -14243,6 +14251,10 @@ interface UIStringAttributeKey {
1424314251
[Field ("NSAdaptiveImageGlyphAttributeName")]
1424414252
NSString AdaptiveImageGlyph { get; }
1424514253

14254+
[NoTV, Mac (15, 2), iOS (18, 2), MacCatalyst (18, 2)]
14255+
[Field ("NSWritingToolsExclusionAttributeName")]
14256+
NSString WritingToolsExclusion { get; }
14257+
1424614258
}
1424714259

1424814260
/// <summary>A <see cref="T:UIKit.UIControl" /> that displays an on/off switch.</summary>
@@ -16428,6 +16440,10 @@ NSDictionary TypingAttributes2 {
1642816440
[NoWatch, NoTV, NoMacCatalyst, iOS (18, 0)]
1642916441
[Export ("textFormattingConfiguration", ArgumentSemantic.Copy), NullAllowed]
1643016442
UITextFormattingViewControllerConfiguration TextFormattingConfiguration { get; set; }
16443+
16444+
[NoTV, MacCatalyst (18, 2), iOS (18, 2)]
16445+
[Export ("writingToolsCoordinator")]
16446+
UIWritingToolsCoordinator WritingToolsCoordinator { get; }
1643116447
}
1643216448

1643316449
interface IUITextViewDelegate { }
@@ -30933,4 +30949,32 @@ interface NSObject_UIAccessibilityTextOperations {
3093330949
void SetAccessibilityTextInputResponderHandler ([NullAllowed] UITextInputReturnHandler handler);
3093430950
}
3093530951

30952+
[NoTV, NoMacCatalyst, iOS (18, 2)]
30953+
[Native]
30954+
public enum UIApplicationCategory : long {
30955+
UIApplicationCategoryWebBrowser = 1,
30956+
}
30957+
30958+
[NoTV, NoMacCatalyst, iOS (18, 2)]
30959+
[Native]
30960+
public enum UIApplicationCategoryDefaultStatus : long {
30961+
Unavailable,
30962+
IsDefault,
30963+
NotDefault,
30964+
}
30965+
30966+
[NoTV, NoMacCatalyst, iOS (18, 2)]
30967+
[ErrorDomain ("UIApplicationCategoryDefaultErrorDomain")]
30968+
[Native]
30969+
public enum UIApplicationCategoryDefaultErrorCode : long {
30970+
RateLimited = 1,
30971+
}
30972+
30973+
[NoTV, NoMacCatalyst, iOS (18, 2)]
30974+
[Category]
30975+
[BaseType (typeof (UIApplication))]
30976+
interface UIApplication_DefaultApplication {
30977+
[Export ("defaultStatusForCategory:error:")]
30978+
UIApplicationCategoryDefaultStatus GetDefaultStatus (UIApplicationCategory category, [NullAllowed] out NSError error);
30979+
}
3093630980
}

0 commit comments

Comments
 (0)