diff --git a/src/AVKit/Enums.cs b/src/AVKit/Enums.cs index 5f590ad73848..9aa569493b9e 100644 --- a/src/AVKit/Enums.cs +++ b/src/AVKit/Enums.cs @@ -34,6 +34,7 @@ public enum AVKitError : long { ContentRatingUnknown = -1100, ContentDisallowedByPasscode = -1101, ContentDisallowedByProfile = -1102, + RecordingFailed = -1200, } [NoWatch] diff --git a/src/avkit.cs b/src/avkit.cs index aff4a6932903..b7456d51a954 100644 --- a/src/avkit.cs +++ b/src/avkit.cs @@ -512,6 +512,14 @@ interface AVPlayerViewControllerDelegate { [iOS (15, 0), NoTV, NoMac, NoWatch, MacCatalyst (15, 0)] [Export ("playerViewController:restoreUserInterfaceForFullScreenExitWithCompletionHandler:")] void RestoreUserInterfaceForFullScreenExit (AVPlayerViewController playerViewController, Action completionHandler); + + [NoWatch, NoTV, NoMacCatalyst, iOS (17, 0)] + [Export ("videoFrameAnalysisTypes", ArgumentSemantic.Assign)] + AVVideoFrameAnalysisType VideoFrameAnalysisTypes { get; set; } + + [NoWatch, NoTV, NoMacCatalyst, iOS (17, 0)] + [Export ("toggleLookupAction")] + UIAction ToggleLookupAction { get; } } [NoWatch, NoTV, NoMac, iOS (13, 0)] @@ -1077,6 +1085,18 @@ public enum AVPlayerViewTrimResult : long { CancelButton, } + [NoWatch, NoTV, Mac (14, 0), iOS (17, 0), MacCatalyst (17, 0)] + [Flags] + [Native] + public enum AVVideoFrameAnalysisType : ulong { + None = 0, + Default = 1 << 0, + Text = 1 << 1, + Subject = 1 << 2, + VisualSearch = 1 << 3, + MachineReadableCode = 1 << 4, + } + [TV (16, 0), NoWatch, Mac (13, 0), iOS (16, 0), MacCatalyst (16, 0)] [BaseType (typeof (NSObject))] [DisableDefaultCtor] @@ -1097,4 +1117,41 @@ interface AVPlaybackSpeed { [Export ("localizedNumericName")] string LocalizedNumericName { get; } } + + + [TV (17, 0), NoWatch, NoMac, NoiOS, NoMacCatalyst] +#if NET + [Protocol, Model] +#else + [Protocol, Model (AutoGeneratedName = true)] +#endif + [BaseType (typeof (NSObject))] + interface AVContinuityDevicePickerViewControllerDelegate { + [Export ("continuityDevicePickerWillBeginPresenting:")] + void ContinuityDevicePickerWillBeginPresenting (AVContinuityDevicePickerViewController pickerViewController); + + [Export ("continuityDevicePicker:didConnectDevice:")] + void ContinuityDevicePicker (AVContinuityDevicePickerViewController pickerViewController, AVContinuityDevice device); + + [Export ("continuityDevicePickerDidCancel:")] + void ContinuityDevicePickerDidCancel (AVContinuityDevicePickerViewController pickerViewController); + + [Export ("continuityDevicePickerDidEndPresenting:")] + void ContinuityDevicePickerDidEndPresenting (AVContinuityDevicePickerViewController pickerViewController); + } + + [TV (17, 0), NoWatch, NoMac, NoiOS, NoMacCatalyst] + [BaseType (typeof (UIViewController))] + interface AVContinuityDevicePickerViewController { + [Static] + [Export ("supported")] + bool Supported { [Bind ("isSupported")] get; } + + [Wrap ("WeakDelegate")] + [NullAllowed] + AVContinuityDevicePickerViewControllerDelegate Delegate { get; set; } + + [NullAllowed, Export ("delegate", ArgumentSemantic.Weak)] + NSObject WeakDelegate { get; set; } + } } diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AVKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AVKit.todo deleted file mode 100644 index daa7adaa5f7d..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-AVKit.todo +++ /dev/null @@ -1,16 +0,0 @@ -!missing-selector! +AVPlaybackSpeed::systemDefaultSpeeds not bound -!missing-selector! +AVPlaybackSpeedCollection::collectionWithSpeeds: not bound -!missing-selector! +AVPlaybackSpeedCollection::defaultSpeedFromList: not bound -!missing-selector! AVPlaybackSpeed::initWithRate:localizedName: not bound -!missing-selector! AVPlaybackSpeed::localizedName not bound -!missing-selector! AVPlaybackSpeed::localizedNumericName not bound -!missing-selector! AVPlaybackSpeed::rate not bound -!missing-selector! AVPlaybackSpeedCollection::selectedSpeed not bound -!missing-selector! AVPlaybackSpeedCollection::selectSpeed: not bound -!missing-selector! AVPlaybackSpeedCollection::speeds not bound -!missing-selector! AVPlayerViewController::playbackSpeedCollection not bound -!missing-selector! AVPlayerViewController::setPlaybackSpeedCollection: not bound -!missing-selector! AVRoutePickerView::customRoutingController not bound -!missing-selector! AVRoutePickerView::setCustomRoutingController: not bound -!missing-type! AVPlaybackSpeed not bound -!missing-type! AVPlaybackSpeedCollection not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-AVKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-AVKit.todo deleted file mode 100644 index ab6088855d99..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-AVKit.todo +++ /dev/null @@ -1,5 +0,0 @@ -!missing-enum! AVVideoFrameAnalysisType not bound -!missing-enum-value! AVKitError native value AVKitErrorRecordingFailed = -1200 not bound -!missing-selector! AVPlayerViewController::setVideoFrameAnalysisTypes: not bound -!missing-selector! AVPlayerViewController::toggleLookupAction not bound -!missing-selector! AVPlayerViewController::videoFrameAnalysisTypes not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-AVKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-AVKit.todo deleted file mode 100644 index 915896b5dc8b..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-AVKit.todo +++ /dev/null @@ -1,3 +0,0 @@ -!missing-enum! AVVideoFrameAnalysisType not bound -!missing-selector! AVPlayerView::setVideoFrameAnalysisTypes: not bound -!missing-selector! AVPlayerView::videoFrameAnalysisTypes not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-AVKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-AVKit.todo deleted file mode 100644 index 59928ac6a442..000000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-AVKit.todo +++ /dev/null @@ -1,7 +0,0 @@ -!missing-enum-value! AVKitError native value AVKitErrorRecordingFailed = -1200 not bound -!missing-null-allowed! 'System.Void AVKit.AVPlayerViewController::set_InfoViewActions(UIKit.UIAction[])' is missing an [NullAllowed] on parameter #0 -!missing-protocol! AVContinuityDevicePickerViewControllerDelegate not bound -!missing-selector! +AVContinuityDevicePickerViewController::isSupported not bound -!missing-selector! AVContinuityDevicePickerViewController::delegate not bound -!missing-selector! AVContinuityDevicePickerViewController::setDelegate: not bound -!missing-type! AVContinuityDevicePickerViewController not bound diff --git a/tests/xtro-sharpie/iOS-AVKit.todo b/tests/xtro-sharpie/iOS-AVKit.todo deleted file mode 100644 index ab6088855d99..000000000000 --- a/tests/xtro-sharpie/iOS-AVKit.todo +++ /dev/null @@ -1,5 +0,0 @@ -!missing-enum! AVVideoFrameAnalysisType not bound -!missing-enum-value! AVKitError native value AVKitErrorRecordingFailed = -1200 not bound -!missing-selector! AVPlayerViewController::setVideoFrameAnalysisTypes: not bound -!missing-selector! AVPlayerViewController::toggleLookupAction not bound -!missing-selector! AVPlayerViewController::videoFrameAnalysisTypes not bound diff --git a/tests/xtro-sharpie/macOS-AVKit.todo b/tests/xtro-sharpie/macOS-AVKit.todo deleted file mode 100644 index 915896b5dc8b..000000000000 --- a/tests/xtro-sharpie/macOS-AVKit.todo +++ /dev/null @@ -1,3 +0,0 @@ -!missing-enum! AVVideoFrameAnalysisType not bound -!missing-selector! AVPlayerView::setVideoFrameAnalysisTypes: not bound -!missing-selector! AVPlayerView::videoFrameAnalysisTypes not bound diff --git a/tests/xtro-sharpie/tvOS-AVKit.todo b/tests/xtro-sharpie/tvOS-AVKit.todo deleted file mode 100644 index 59928ac6a442..000000000000 --- a/tests/xtro-sharpie/tvOS-AVKit.todo +++ /dev/null @@ -1,7 +0,0 @@ -!missing-enum-value! AVKitError native value AVKitErrorRecordingFailed = -1200 not bound -!missing-null-allowed! 'System.Void AVKit.AVPlayerViewController::set_InfoViewActions(UIKit.UIAction[])' is missing an [NullAllowed] on parameter #0 -!missing-protocol! AVContinuityDevicePickerViewControllerDelegate not bound -!missing-selector! +AVContinuityDevicePickerViewController::isSupported not bound -!missing-selector! AVContinuityDevicePickerViewController::delegate not bound -!missing-selector! AVContinuityDevicePickerViewController::setDelegate: not bound -!missing-type! AVContinuityDevicePickerViewController not bound