diff --git a/src/callkit.cs b/src/callkit.cs index 73ab60d1ef3..2b1dfbe5556 100644 --- a/src/callkit.cs +++ b/src/callkit.cs @@ -58,6 +58,7 @@ public enum CXErrorCodeIncomingCallError : long { FilteredByBlockList = 4, FilteredDuringRestrictedSharingMode = 5, CallIsProtected = 6, + FilteredBySensitiveParticipants = 7, } /// Enumerates transaction request errors. @@ -673,6 +674,10 @@ interface CXProviderDelegate { [MacCatalyst (13, 1)] [Export ("provider:didDeactivateAudioSession:")] void DidDeactivateAudioSession (CXProvider provider, AVAudioSession audioSession); + + [iOS (26, 0), NoMacCatalyst, NoMac] + [Export ("provider:performSetTranslatingCallAction:")] + void PerformSetTranslatingCallAction (CXProvider provider, CXSetTranslatingCallAction action); } /// Reports external (out-of-band) events, such as incoming calls, to the system, and receives internal (in-band) user action events from the system. @@ -785,6 +790,10 @@ interface CXProviderConfiguration : NSCopying { [DesignatedInitializer] [Export ("init")] NativeHandle Constructor (); + + [iOS (26, 0), MacCatalyst (26, 0), Mac (26, 0)] + [Export ("supportsAudioTranslation")] + bool SupportsAudioTranslation { get; set; } } /// Contains the data that are needed to join a group call. @@ -913,4 +922,32 @@ interface CXTransaction : NSCopying, NSSecureCoding { [Export ("addAction:")] void AddAction (CXAction action); } + + [NoTV, NoMacCatalyst, NoMac, iOS (26, 0)] + [BaseType (typeof (CXCallAction))] + [DisableDefaultCtor] + interface CXSetTranslatingCallAction : NSSecureCoding { + [Export ("isTranslating")] + bool IsTranslating { get; } + + [Export ("localLanguage", ArgumentSemantic.Strong)] + NSLocale LocalLanguage { get; } + + [Export ("remoteLanguage", ArgumentSemantic.Strong)] + NSLocale RemoteLanguage { get; } + + [Export ("initWithCallUUID:isTranslating:localLanguage:remoteLanguage:")] + [DesignatedInitializer] + NativeHandle Constructor (NSUuid uuid, bool isTranslating, NSLocale localLanguage, NSLocale remoteLanguage); + + [Export ("fulfillUsingTranslationEngine:")] + void Fulfill (CXTranslationEngine translationEngine); + } + + [iOS (26, 0), NoMacCatalyst, NoMac] + [Native] + public enum CXTranslationEngine : long { + Default, + Custom, + } } diff --git a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CallKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CallKit.todo deleted file mode 100644 index 8a49dec7fc8..00000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CallKit.todo +++ /dev/null @@ -1,3 +0,0 @@ -!missing-enum-value! CXErrorCodeIncomingCallError native value CXErrorCodeIncomingCallErrorFilteredBySensitiveParticipants = 7 not bound -!missing-selector! CXProviderConfiguration::setSupportsAudioTranslation: not bound -!missing-selector! CXProviderConfiguration::supportsAudioTranslation not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-CallKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-CallKit.todo deleted file mode 100644 index 2777e6a854b..00000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-CallKit.todo +++ /dev/null @@ -1,12 +0,0 @@ -!missing-enum! CXTranslationEngine not bound -!missing-enum-value! CXErrorCodeIncomingCallError native value CXErrorCodeIncomingCallErrorFilteredBySensitiveParticipants = 7 not bound -!missing-protocol-member! CXProviderDelegate::provider:performSetTranslatingCallAction: not found -!missing-selector! CXProviderConfiguration::setSupportsAudioTranslation: not bound -!missing-selector! CXProviderConfiguration::supportsAudioTranslation not bound -!missing-selector! CXSetTranslatingCallAction::initWithCoder: not bound -!missing-selector! CXSetTranslatingCallAction::isTranslating not bound -!missing-type! CXSetTranslatingCallAction not bound -!missing-selector! CXSetTranslatingCallAction::fulfillUsingTranslationEngine: not bound -!missing-selector! CXSetTranslatingCallAction::initWithCallUUID:isTranslating:localLanguage:remoteLanguage: not bound -!missing-selector! CXSetTranslatingCallAction::localLanguage not bound -!missing-selector! CXSetTranslatingCallAction::remoteLanguage not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CallKit.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-CallKit.todo deleted file mode 100644 index e8eeba98333..00000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-CallKit.todo +++ /dev/null @@ -1,2 +0,0 @@ -!missing-selector! CXProviderConfiguration::setSupportsAudioTranslation: not bound -!missing-selector! CXProviderConfiguration::supportsAudioTranslation not bound