Skip to content

[BrowserEngineKit] Implement Xcode 16.2 beta 1-3 changes. #21719

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

Merged
merged 3 commits into from
Dec 3, 2024
Merged
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
157 changes: 157 additions & 0 deletions src/browserenginekit.cs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
using CoreGraphics;
using Foundation;
using ObjCRuntime;
using UniformTypeIdentifiers;
#if MONOMAC
using AppKit;
#else
Expand Down Expand Up @@ -234,6 +235,11 @@ interface BEWebContentProcess
[Async]
void Create (Action interruptionHandler, BEWebContentProcessCreateCallback completion);

[Static]
[Export ("webContentProcessWithBundleID:interruptionHandler:completion:")]
[Async]
void Create (string bundleId, Action interruptionHandler, BEWebContentProcessCreateCallback completion);

[Export ("invalidate")]
void Invalidate ();

Expand Down Expand Up @@ -269,6 +275,11 @@ interface BENetworkingProcess
[Async]
void Create (Action interruptionHandler, BENetworkingProcessCreateCallback completion);

[iOS (18, 2), Mac (15, 2), MacCatalyst (18, 2)]
[Static]
[Export ("networkProcessWithBundleID:interruptionHandler:completion:")]
void Create (string bundleId, Action interruptionHandler, BENetworkingProcessCreateCallback completion);

[Export ("invalidate")]
void Invalidate ();

Expand Down Expand Up @@ -301,6 +312,11 @@ interface BERenderingProcess
[Async]
void Create (Action interruptionHandler, BERenderingProcessCreateCallback completion);

[Static]
[Export ("renderingProcessWithBundleID:interruptionHandler:completion:")]
[Async]
void Create (string bundleId, Action interruptionHandler, BERenderingProcessCreateCallback completion);

[Export ("invalidate")]
void Invalidate ();

Expand Down Expand Up @@ -1164,6 +1180,18 @@ interface NSObject_BEAccessibility

[Export ("browserAccessibilityDeleteTextAtCursor:")]
void BrowserAccessibilityDeleteTextAtCursor (nint numberOfCharacters);

[iOS (18, 2), TV (18, 2), MacCatalyst (18, 2), Mac (15, 2)]
[Export ("accessibilityLineEndPositionFromCurrentSelection")]
nint GetAccessibilityLineEndPositionFromCurrentSelection ();

[iOS (18, 2), TV (18, 2), MacCatalyst (18, 2), Mac (15, 2)]
[Export ("accessibilityLineStartPositionFromCurrentSelection")]
nint GetAccessibilityLineStartPositionFromCurrentSelection ();

[iOS (18, 2), TV (18, 2), MacCatalyst (18, 2), Mac (15, 2)]
[Export ("accessibilityLineRangeForPosition:")]
NSRange GetAccessibilityLineRangeForPosition (nint position);
}

[BackingFieldType (typeof (ulong))]
Expand Down Expand Up @@ -1194,5 +1222,134 @@ public enum BEAccessibilityNotification : long {
[Field ("BEAccessibilityValueChangedNotification")]
Changed,
}

[iOS (18, 2), TV (18, 2), Mac (15, 2), MacCatalyst (18, 2)]
[BaseType (typeof (NSObject))]
interface BEAccessibilityTextMarker : NSCopying, NSSecureCoding
{
}

[iOS (18, 2), TV (18, 2), Mac (15, 2), MacCatalyst (18, 2)]
[BaseType (typeof (NSObject))]
interface BEAccessibilityTextMarkerRange : NSCopying, NSSecureCoding
{
[Export ("startMarker", ArgumentSemantic.Strong)]
BEAccessibilityTextMarker StartMarker { get; set; }

[Export ("endMarker", ArgumentSemantic.Strong)]
BEAccessibilityTextMarker EndMarker { get; set; }
}

[iOS (18, 2), TV (18, 2), Mac (15, 2), MacCatalyst (18, 2)]
[Protocol (BackwardsCompatibleCodeGeneration = false)]
interface BEAccessibilityTextMarkerSupport
{
[Abstract]
[Export ("accessibilityBoundsForTextMarkerRange:")]
CGRect GetAccessibilityBounds (BEAccessibilityTextMarkerRange range);

[Abstract]
[Export ("accessibilityContentForTextMarkerRange:")]
[return: NullAllowed]
string GetAccessibilityContent (BEAccessibilityTextMarkerRange range);

[Abstract]
[return: NullAllowed]
[Export ("accessibilityTextMarkerRangeForCurrentSelection")]
BEAccessibilityTextMarkerRange GetAccessibilityTextMarkerRangeForCurrentSelection ();

[Abstract]
[Export ("accessibilityTextMarkerRange")]
BEAccessibilityTextMarkerRange GetAccessibilityTextMarkerRange ();

[Abstract]
[Export ("accessibilityNextTextMarker:")]
[return: NullAllowed]
BEAccessibilityTextMarker GetAccessibilityNextTextMarker (BEAccessibilityTextMarker marker);

[Abstract]
[Export ("accessibilityPreviousTextMarker:")]
[return: NullAllowed]
BEAccessibilityTextMarker GetAccessibilityPreviousTextMarker (BEAccessibilityTextMarker marker);

[Abstract]
[Export ("accessibilityLineEndMarkerForMarker:")]
[return: NullAllowed]
BEAccessibilityTextMarker GetAccessibilityLineEndMarker (BEAccessibilityTextMarker marker);

[Abstract]
[Export ("accessibilityLineStartMarkerForMarker:")]
[return: NullAllowed]
BEAccessibilityTextMarker GetAccessibilityLineStartMarker (BEAccessibilityTextMarker marker);

[Abstract]
[Export ("accessibilityMarkerForPoint:")]
[return: NullAllowed]
BEAccessibilityTextMarker GetAccessibilityMarker (CGPoint point);

[Abstract]
[Export ("accessibilityTextMarkerForPosition:")]
[return: NullAllowed]
BEAccessibilityTextMarker GetAccessibilityTextMarker (nint position);

[Abstract]
[Export ("accessibilityTextMarkerRangeForRange:")]
[return: NullAllowed]
BEAccessibilityTextMarkerRange GetAccessibilityTextMarker (NSRange range);

[Abstract]
[Export ("accessibilityRangeForTextMarkerRange:")]
NSRange GetAccessibilityRange (BEAccessibilityTextMarkerRange range);
}

[NoTV, NoMac, iOS (18, 2), MacCatalyst (18, 2)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface BEDownloadMonitorLocation
{
[Export ("url")]
NSUrl Url { get; }

[Export ("bookmarkData")]
NSData BookmarkData { get; }
}

delegate void BEDownloadMonitorUseDownloadsFolderCallback ([NullAllowed] BEDownloadMonitorLocation finalLocation);
delegate void BEDownloadMonitorBeginMonitoringCallback ([NullAllowed] BEDownloadMonitorLocation placeholderLocation, [NullAllowed] NSError error);
delegate void BEDownloadMonitorResumeMonitoringCallback ([NullAllowed] NSError error);

[NoTV, NoMac, iOS (18, 2), MacCatalyst (18, 2)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface BEDownloadMonitor
{
[Export ("initWithSourceURL:destinationURL:observedProgress:liveActivityAccessToken:")]
NativeHandle Constructor (NSUrl sourceUrl, NSUrl destinationUrl, NSProgress observedProgress, NSData liveActivityAccessToken);

[Export ("useDownloadsFolderWithPlaceholderType:finalFileCreatedHandler:")]
void UseDownloadsFolder ([NullAllowed] UTType placehodlerType, BEDownloadMonitorUseDownloadsFolderCallback finalFileCreatedHandler);

[Async]
[Export ("beginMonitoring:")]
void BeginMonitoring (BEDownloadMonitorBeginMonitoringCallback completion);

[Async]
[Export ("resumeMonitoring:completionHandler:")]
void ResumeMonitoring (NSUrl url, BEDownloadMonitorResumeMonitoringCallback completionHandler);

[Export ("identifier")]
NSUuid Identifier { get; }

[Export ("sourceURL")]
NSUrl SourceUrl { get; }

[Export ("destinationURL")]
NSUrl DestinationUrl { get; }

[Static]
[return: NullAllowed]
[Export ("createAccessToken")]
NSData CreateAccessToken ();
}
}
#endif
27 changes: 27 additions & 0 deletions tests/cecil-tests/Documentation.KnownFailures.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26719,18 +26719,38 @@ M:BackgroundTasks.BGTaskScheduler.GetPending(System.Action{BackgroundTasks.BGTas
M:BackgroundTasks.BGTaskScheduler.GetPendingAsync
M:BackgroundTasks.BGTaskScheduler.Register(System.String,CoreFoundation.DispatchQueue,System.Action{BackgroundTasks.BGTask})
M:BackgroundTasks.BGTaskScheduler.Submit(BackgroundTasks.BGTaskRequest,Foundation.NSError@)
M:BrowserEngineKit.BEAccessibilityTextMarker.Copy(Foundation.NSZone)
M:BrowserEngineKit.BEAccessibilityTextMarker.EncodeTo(Foundation.NSCoder)
M:BrowserEngineKit.BEAccessibilityTextMarkerRange.Copy(Foundation.NSZone)
M:BrowserEngineKit.BEAccessibilityTextMarkerRange.EncodeTo(Foundation.NSCoder)
M:BrowserEngineKit.BEDownloadMonitor.BeginMonitoringAsync
M:BrowserEngineKit.BEDownloadMonitor.ResumeMonitoringAsync(Foundation.NSUrl)
M:BrowserEngineKit.BEDragInteraction.Dispose(System.Boolean)
M:BrowserEngineKit.BELayerHierarchyHandle.EncodeTo(Foundation.NSCoder)
M:BrowserEngineKit.BELayerHierarchyHostingTransactionCoordinator.EncodeTo(Foundation.NSCoder)
M:BrowserEngineKit.BELayerHierarchyHostingView.BELayerHierarchyHostingViewAppearance.#ctor(System.IntPtr)
M:BrowserEngineKit.BENetworkingProcess.CreateAsync(System.Action)
M:BrowserEngineKit.BERenderingProcess.CreateAsync(System.Action)
M:BrowserEngineKit.BERenderingProcess.CreateAsync(System.String,System.Action)
M:BrowserEngineKit.BEScrollView.BEScrollViewAppearance.#ctor(System.IntPtr)
M:BrowserEngineKit.BEScrollView.Dispose(System.Boolean)
M:BrowserEngineKit.BETextInteraction.DidMoveToView(UIKit.UIView)
M:BrowserEngineKit.BETextInteraction.Dispose(System.Boolean)
M:BrowserEngineKit.BETextInteraction.WillMoveToView(UIKit.UIView)
M:BrowserEngineKit.BEWebContentProcess.CreateAsync(System.Action)
M:BrowserEngineKit.BEWebContentProcess.CreateAsync(System.String,System.Action)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityBounds(BrowserEngineKit.BEAccessibilityTextMarkerRange)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityContent(BrowserEngineKit.BEAccessibilityTextMarkerRange)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityLineEndMarker(BrowserEngineKit.BEAccessibilityTextMarker)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityLineStartMarker(BrowserEngineKit.BEAccessibilityTextMarker)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityMarker(CoreGraphics.CGPoint)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityNextTextMarker(BrowserEngineKit.BEAccessibilityTextMarker)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityPreviousTextMarker(BrowserEngineKit.BEAccessibilityTextMarker)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityRange(BrowserEngineKit.BEAccessibilityTextMarkerRange)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityTextMarker(Foundation.NSRange)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityTextMarker(System.IntPtr)
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityTextMarkerRange
M:BrowserEngineKit.IBEAccessibilityTextMarkerSupport.GetAccessibilityTextMarkerRangeForCurrentSelection
M:BrowserEngineKit.IBEDragInteractionDelegate.GetDragItems(BrowserEngineKit.BEDragInteraction,UIKit.IUIDragSession,CoreGraphics.CGPoint,BrowserEngineKit.BEDragInteractionDelegateGetDragItemsCallback)
M:BrowserEngineKit.IBEDragInteractionDelegate.PrepareDragSession(BrowserEngineKit.BEDragInteraction,UIKit.IUIDragSession,System.Func{System.Boolean})
M:BrowserEngineKit.IBEProcessCapabilityGrant.Invalidate
Expand Down Expand Up @@ -26807,6 +26827,9 @@ M:BrowserEngineKit.IBETextSelectionDirectionNavigation.MoveInLayoutDirection(UIK
M:BrowserEngineKit.IBETextSelectionDirectionNavigation.MoveInStorageDirection(UIKit.UITextStorageDirection,UIKit.UITextGranularity)
M:BrowserEngineKit.NSObject_BEAccessibility.BrowserAccessibilityDeleteTextAtCursor(Foundation.NSObject,System.IntPtr)
M:BrowserEngineKit.NSObject_BEAccessibility.BrowserAccessibilityInsertTextAtCursor(Foundation.NSObject,System.String)
M:BrowserEngineKit.NSObject_BEAccessibility.GetAccessibilityLineEndPositionFromCurrentSelection(Foundation.NSObject)
M:BrowserEngineKit.NSObject_BEAccessibility.GetAccessibilityLineRangeForPosition(Foundation.NSObject,System.IntPtr)
M:BrowserEngineKit.NSObject_BEAccessibility.GetAccessibilityLineStartPositionFromCurrentSelection(Foundation.NSObject)
M:BrowserEngineKit.NSObject_BEAccessibility.GetBrowserAccessibilityAttributedValue(Foundation.NSObject,Foundation.NSRange)
M:BrowserEngineKit.NSObject_BEAccessibility.GetBrowserAccessibilityContainerType(Foundation.NSObject)
M:BrowserEngineKit.NSObject_BEAccessibility.GetBrowserAccessibilityCurrentStatus(Foundation.NSObject)
Expand Down Expand Up @@ -71434,6 +71457,9 @@ T:BrowserEngineKit.BEAccessibilityNotification
T:BrowserEngineKit.BEAccessibilityPressedState
T:BrowserEngineKit.BEAccessibilityTrait
T:BrowserEngineKit.BEDirectionalTextRange
T:BrowserEngineKit.BEDownloadMonitorBeginMonitoringCallback
T:BrowserEngineKit.BEDownloadMonitorResumeMonitoringCallback
T:BrowserEngineKit.BEDownloadMonitorUseDownloadsFolderCallback
T:BrowserEngineKit.BEDragInteractionDelegate
T:BrowserEngineKit.BEDragInteractionDelegateGetDragItemsCallback
T:BrowserEngineKit.BEGestureType
Expand All @@ -71454,6 +71480,7 @@ T:BrowserEngineKit.BETextInputRequestTextRectsCallback
T:BrowserEngineKit.BETextInteractionDelegate
T:BrowserEngineKit.BETextReplacementOptions
T:BrowserEngineKit.BEWebContentProcessCreateCallback
T:BrowserEngineKit.IBEAccessibilityTextMarkerSupport
T:BrowserEngineKit.IBEDragInteractionDelegate
T:BrowserEngineKit.IBEExtendedTextInputTraits
T:BrowserEngineKit.IBEProcessCapabilityGrant
Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

Loading