Skip to content

[WebKit] Update bindings to Xcode 26 Beta 2 #23255

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: xcode26.0
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions src/webkit.cs
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,13 @@
using UIFindInteraction = Foundation.NSObject;
using UIViewController = AppKit.NSViewController;
using IUIEditMenuInteractionAnimating = Foundation.NSObject;
using UIConversationContext = Foundation.NSObject;
using UIInputSuggestion = Foundation.NSObject;
#else
#if __MACCATALYST__
using AppKit;
using UIConversationContext = Foundation.NSObject;
using UIInputSuggestion = Foundation.NSObject;
#else
using NSDraggingInfo = Foundation.NSObject;
using INSDraggingInfo = Foundation.NSObject;
Expand Down Expand Up @@ -5188,6 +5192,11 @@ interface WKHttpCookieStore {
[Export ("getCookiePolicy:")]
[Async]
void GetCookiePolicy (Action<WKCookiePolicy> completionHandler);

[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Async]
[Export ("setCookies:completionHandler:")]
void SetCookies (NSHttpCookie [] cookies, [NullAllowed] Action completionHandler);
}

interface IWKHttpCookieStoreObserver { }
Expand Down Expand Up @@ -5731,6 +5740,10 @@ interface WKWebsiteDataType {
[iOS (17, 0), Mac (14, 0), MacCatalyst (17, 0)]
[Field ("WKWebsiteDataTypeHashSalt")]
NSString HashSalt { get; }

[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Field ("WKWebsiteDataTypeScreenTime")]
NSString TypeScreenTime { get; }
}

[NoiOS, NoMacCatalyst, Mac (14, 0)]
Expand All @@ -5757,6 +5770,9 @@ interface WebViewNotification {
NSString DidChangeSelection { get; }
}

delegate void WKWebsiteDataStoreFetchDataHandler ([NullAllowed] NSData data, [NullAllowed] NSError error);
delegate void WKWebsiteDataStoreRestoreDataHandler ([NullAllowed] NSError error);

/// <summary>Data that is associated with a website, such as cookies and caches.</summary>
///
/// <related type="externalDocumentation" href="https://developer.apple.com/library/ios/documentation/WebKit/Reference/WKWebsiteDataStore_Class_Ref/index.html">Apple documentation for <c>WKWebsiteDataStore</c></related>
Expand Down Expand Up @@ -5845,6 +5861,16 @@ interface WKWebsiteDataStore : NSSecureCoding {
[iOS (17, 0), Mac (14, 0), MacCatalyst (17, 0)]
[Export ("proxyConfigurations", ArgumentSemantic.Copy), NullAllowed]
NWProxyConfig [] ProxyConfigurations { get; set; }

[Async]
[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Export ("fetchDataOfTypes:completionHandler:")]
void FetchData (NSSet<NSString> dataTypes, WKWebsiteDataStoreFetchDataHandler completionHandler);

[Async]
[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Export ("restoreData:completionHandler:")]
void RestoreData (NSData data, WKWebsiteDataStoreRestoreDataHandler completionHandler);
}

[iOS (18, 4), NoTV]
Expand Down Expand Up @@ -6023,6 +6049,10 @@ void RunJavaScriptTextInputPanel (WKWebView webView, string prompt, [NullAllowed
[NoMac, iOS (16, 4), MacCatalyst (16, 4)]
[Export ("webView:willDismissEditMenuWithAnimator:")]
void WillDismissEditMenu (WKWebView webView, IUIEditMenuInteractionAnimating animator);

[NoMacCatalyst, iOS (26, 0), NoMac]
[Export ("webView:insertInputSuggestion:")]
void InsertInputSuggestion (WKWebView webView, UIInputSuggestion inputSuggestion);
}

/// <summary>Interface representing the required methods (if any) of the protocol <see cref="WebKit.WKUIDelegate" />.</summary>
Expand Down Expand Up @@ -6122,6 +6152,9 @@ interface WKUserScript : NSCopying {
bool IsForMainFrameOnly { [Bind ("isForMainFrameOnly")] get; }
}

delegate void WKWebViewFetchDataHandler ([NullAllowed] NSData data, [NullAllowed] NSError error);
delegate void WKWebViewRestoreDataHandler ([NullAllowed] NSError error);

/// <summary>Displays a Web page.</summary>
///
/// <related type="externalDocumentation" href="https://developer.apple.com/library/ios/documentation/WebKit/Reference/WKWebView_Ref/index.html">Apple documentation for <c>WKWebView</c></related>
Expand Down Expand Up @@ -6596,6 +6629,24 @@ interface WKWebView
[Mac (15, 0), iOS (18, 2), MacCatalyst (18, 0)]
[Export ("writingToolsActive")]
bool WritingToolsActive { [Bind ("isWritingToolsActive")] get; }

[NoMacCatalyst, iOS (26, 0), NoMac]
[Export ("conversationContext", ArgumentSemantic.Strong)]
UIConversationContext ConversationContext { get; set; }

[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Async]
[Export ("fetchDataOfTypes:completionHandler:")]
void FetchData (WKWebViewDataType dataTypes, WKWebViewFetchDataHandler completionHandler);

[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Async]
[Export ("restoreData:completionHandler:")]
void RestoreData (NSData data, WKWebViewRestoreDataHandler completionHandler);

[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Export ("isBlockedByScreenTime")]
bool IsBlockedByScreenTime { get; }
}

/// <param name="result">The result of a successful evaluation. <see langword="null" /> if error occurred.</param>
Expand Down Expand Up @@ -6735,6 +6786,10 @@ interface WKWebViewConfiguration : NSCopying, NSSecureCoding {
[iOS (18, 4), MacCatalyst (18, 4), Mac (15, 4), NoTV]
[Export ("webExtensionController", ArgumentSemantic.Strong), NullAllowed]
WKWebExtensionController WebExtensionController { get; set; }

[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Export ("showsSystemScreenTimeBlockingView")]
bool ShowsSystemScreenTimeBlockingView { get; set; }
}

/// <summary>A pool of content processes.</summary>
Expand Down Expand Up @@ -8285,4 +8340,11 @@ enum WKWebExtensionPermission {
[Field ("WKWebExtensionPermissionWebRequest")]
WebRequest = 1 << 15,
}

[Flags]
[Mac (26, 0), iOS (26, 0), MacCatalyst (26, 0)]
[Native]
public enum WKWebViewDataType : ulong {
SessionStorage = 1uL << 0,
}
}
15 changes: 15 additions & 0 deletions tests/cecil-tests/Documentation.KnownFailures.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7231,6 +7231,7 @@ F:WebKit.WKWebpagePreferencesUpgradeToHttpsPolicy.AutomaticFallbackToHttp
F:WebKit.WKWebpagePreferencesUpgradeToHttpsPolicy.ErrorOnFailure
F:WebKit.WKWebpagePreferencesUpgradeToHttpsPolicy.KeepAsRequested
F:WebKit.WKWebpagePreferencesUpgradeToHttpsPolicy.UserMediatedFallbackToHttp
F:WebKit.WKWebViewDataType.SessionStorage
M:Accelerate.vImage.BoxConvolveARGB8888(Accelerate.vImageBuffer@,Accelerate.vImageBuffer@,System.IntPtr,System.IntPtr,System.IntPtr,System.UInt32,System.UInt32,Accelerate.Pixel8888,Accelerate.vImageFlags)
M:Accelerate.vImage.BoxConvolveARGB8888(Accelerate.vImageBuffer@,Accelerate.vImageBuffer@,System.IntPtr,System.IntPtr,System.IntPtr,System.UInt32,System.UInt32,Accelerate.Pixel8888*,Accelerate.vImageFlags)
M:Accelerate.vImage.BoxConvolvePlanar8(Accelerate.vImageBuffer@,Accelerate.vImageBuffer@,System.IntPtr,System.IntPtr,System.IntPtr,System.UInt32,System.UInt32,System.Byte,Accelerate.vImageFlags)
Expand Down Expand Up @@ -17124,6 +17125,7 @@ M:WebKit.IWKNavigationDelegate.ShouldGoToBackForwardListItem(WebKit.WKWebView,We
M:WebKit.IWKScriptMessageHandlerWithReply.DidReceiveScriptMessage(WebKit.WKUserContentController,WebKit.WKScriptMessage,System.Action{Foundation.NSObject,Foundation.NSString})
M:WebKit.IWKUIDelegate.ContextMenuDidEnd(WebKit.WKWebView,WebKit.WKContextMenuElementInfo)
M:WebKit.IWKUIDelegate.ContextMenuWillPresent(WebKit.WKWebView,WebKit.WKContextMenuElementInfo)
M:WebKit.IWKUIDelegate.InsertInputSuggestion(WebKit.WKWebView,UIKit.UIInputSuggestion)
M:WebKit.IWKUIDelegate.RequestDeviceOrientationAndMotionPermission(WebKit.WKWebView,WebKit.WKSecurityOrigin,WebKit.WKFrameInfo,System.Action{WebKit.WKPermissionDecision})
M:WebKit.IWKUIDelegate.RequestDeviceOrientationAndMotionPermissionAsync(WebKit.WKWebView,WebKit.WKSecurityOrigin,WebKit.WKFrameInfo)
M:WebKit.IWKUIDelegate.RequestMediaCapturePermission(WebKit.WKWebView,WebKit.WKSecurityOrigin,WebKit.WKFrameInfo,WebKit.WKMediaCaptureType,System.Action{WebKit.WKPermissionDecision})
Expand Down Expand Up @@ -17324,6 +17326,7 @@ M:WebKit.WKDownloadDelegate_Extensions.WillPerformHttpRedirection(WebKit.IWKDown
M:WebKit.WKFrameInfo.Dispose(System.Boolean)
M:WebKit.WKHttpCookieStore.GetCookiePolicyAsync
M:WebKit.WKHttpCookieStore.SetCookiePolicyAsync(WebKit.WKCookiePolicy)
M:WebKit.WKHttpCookieStore.SetCookiesAsync(Foundation.NSHttpCookie[])
M:WebKit.WKNavigationDelegate_Extensions.DecidePolicy(WebKit.IWKNavigationDelegate,WebKit.WKWebView,WebKit.WKNavigationAction,WebKit.WKWebpagePreferences,System.Action{WebKit.WKNavigationActionPolicy,WebKit.WKWebpagePreferences})
M:WebKit.WKNavigationDelegate_Extensions.NavigationActionDidBecomeDownload(WebKit.IWKNavigationDelegate,WebKit.WKWebView,WebKit.WKNavigationAction,WebKit.WKDownload)
M:WebKit.WKNavigationDelegate_Extensions.NavigationResponseDidBecomeDownload(WebKit.IWKNavigationDelegate,WebKit.WKWebView,WebKit.WKNavigationResponse,WebKit.WKDownload)
Expand All @@ -17332,6 +17335,7 @@ M:WebKit.WKNavigationDelegate_Extensions.ShouldGoToBackForwardListItem(WebKit.IW
M:WebKit.WKScriptMessage.Dispose(System.Boolean)
M:WebKit.WKUIDelegate_Extensions.ContextMenuDidEnd(WebKit.IWKUIDelegate,WebKit.WKWebView,WebKit.WKContextMenuElementInfo)
M:WebKit.WKUIDelegate_Extensions.ContextMenuWillPresent(WebKit.IWKUIDelegate,WebKit.WKWebView,WebKit.WKContextMenuElementInfo)
M:WebKit.WKUIDelegate_Extensions.InsertInputSuggestion(WebKit.IWKUIDelegate,WebKit.WKWebView,UIKit.UIInputSuggestion)
M:WebKit.WKUIDelegate_Extensions.RequestDeviceOrientationAndMotionPermission(WebKit.IWKUIDelegate,WebKit.WKWebView,WebKit.WKSecurityOrigin,WebKit.WKFrameInfo,System.Action{WebKit.WKPermissionDecision})
M:WebKit.WKUIDelegate_Extensions.RequestDeviceOrientationAndMotionPermissionAsync(WebKit.IWKUIDelegate,WebKit.WKWebView,WebKit.WKSecurityOrigin,WebKit.WKFrameInfo)
M:WebKit.WKUIDelegate_Extensions.RequestMediaCapturePermission(WebKit.IWKUIDelegate,WebKit.WKWebView,WebKit.WKSecurityOrigin,WebKit.WKFrameInfo,WebKit.WKMediaCaptureType,System.Action{WebKit.WKPermissionDecision})
Expand All @@ -17342,6 +17346,7 @@ M:WebKit.WKUIDelegate_Extensions.ShowLockDownModeAsync(WebKit.IWKUIDelegate,WebK
M:WebKit.WKUIDelegate_Extensions.WillCommitContextMenu(WebKit.IWKUIDelegate,WebKit.WKWebView,WebKit.WKContextMenuElementInfo,UIKit.IUIContextMenuInteractionCommitAnimating)
M:WebKit.WKUIDelegate_Extensions.WillDismissEditMenu(WebKit.IWKUIDelegate,WebKit.WKWebView,UIKit.IUIEditMenuInteractionAnimating)
M:WebKit.WKUIDelegate_Extensions.WillPresentEditMenu(WebKit.IWKUIDelegate,WebKit.WKWebView,UIKit.IUIEditMenuInteractionAnimating)
M:WebKit.WKUIDelegate.InsertInputSuggestion(WebKit.WKWebView,UIKit.UIInputSuggestion)
M:WebKit.WKWebExtension.CreateAsync(Foundation.NSBundle)
M:WebKit.WKWebExtension.CreateAsync(Foundation.NSUrl)
M:WebKit.WKWebExtensionAction.Dispose(System.Boolean)
Expand All @@ -17363,15 +17368,19 @@ M:WebKit.WKWebExtensionDataTypeExtensions.ToFlags(System.Collections.Generic.IEn
M:WebKit.WKWebExtensionMessagePort.SendMessageAsync(Foundation.NSObject)
M:WebKit.WKWebExtensionPermissionExtensions.ToFlags(System.Collections.Generic.IEnumerable{Foundation.NSString})
M:WebKit.WKWebsiteDataStore.FetchAllDataStoreIdentifiersAsync
M:WebKit.WKWebsiteDataStore.FetchDataAsync(Foundation.NSSet{Foundation.NSString})
M:WebKit.WKWebsiteDataStore.RemoveAsync(Foundation.NSUuid)
M:WebKit.WKWebsiteDataStore.RestoreDataAsync(Foundation.NSData)
M:WebKit.WKWebView.CallAsyncJavaScriptAsync(System.String,Foundation.NSDictionary{Foundation.NSString,Foundation.NSObject},WebKit.WKFrameInfo,WebKit.WKContentWorld)
M:WebKit.WKWebView.CloseAllMediaPresentationsAsync
M:WebKit.WKWebView.CreatePdfAsync(WebKit.WKPdfConfiguration)
M:WebKit.WKWebView.CreateWebArchiveAsync
M:WebKit.WKWebView.Dispose(System.Boolean)
M:WebKit.WKWebView.EvaluateJavaScriptAsync(System.String,WebKit.WKFrameInfo,WebKit.WKContentWorld)
M:WebKit.WKWebView.FetchDataAsync(WebKit.WKWebViewDataType)
M:WebKit.WKWebView.FindAsync(System.String,WebKit.WKFindConfiguration)
M:WebKit.WKWebView.RequestMediaPlaybackStateAsync
M:WebKit.WKWebView.RestoreDataAsync(Foundation.NSData)
M:WebKit.WKWebView.ResumeDownloadAsync(Foundation.NSData)
M:WebKit.WKWebView.SetAllMediaPlaybackSuspendedAsync(System.Boolean)
M:WebKit.WKWebView.SetCameraCaptureStateAsync(WebKit.WKMediaCaptureState)
Expand Down Expand Up @@ -24310,6 +24319,7 @@ P:WebKit.WKWebExtensionControllerConfiguration.Persistent
P:WebKit.WKWebExtensionDataRecord.ContainedDataTypes
P:WebKit.WKWebExtensionMessagePort.Disconnected
P:WebKit.WKWebpagePreferences.LockdownModeEnabled
P:WebKit.WKWebView.ConversationContext
P:WebKit.WKWebView.FindInteractionEnabled
P:WebKit.WKWebView.Inspectable
P:WebKit.WKWebView.WritingToolsActive
Expand Down Expand Up @@ -29207,3 +29217,8 @@ T:WebKit.WKWebExtensionWindowCallback
T:WebKit.WKWebExtensionWindowState
T:WebKit.WKWebExtensionWindowType
T:WebKit.WKWebpagePreferencesUpgradeToHttpsPolicy
T:WebKit.WKWebsiteDataStoreFetchDataHandler
T:WebKit.WKWebsiteDataStoreRestoreDataHandler
T:WebKit.WKWebViewDataType
T:WebKit.WKWebViewFetchDataHandler
T:WebKit.WKWebViewRestoreDataHandler
10 changes: 0 additions & 10 deletions tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-WebKit.todo

This file was deleted.

13 changes: 0 additions & 13 deletions tests/xtro-sharpie/api-annotations-dotnet/iOS-WebKit.todo

This file was deleted.

10 changes: 0 additions & 10 deletions tests/xtro-sharpie/api-annotations-dotnet/macOS-WebKit.todo

This file was deleted.

Loading