Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save vs-mobiletools-engineering-service2/10f33d2a8f67c02ccd4b74c5cc145d13 to your computer and use it in GitHub Desktop.
Save vs-mobiletools-engineering-service2/10f33d2a8f67c02ccd4b74c5cc145d13 to your computer and use it in GitHub Desktop.
dotnet-legacy-MacCatalyst API diff from stable
title description author ms.author ms.date ms.topic ms.assetid ms.prod
Xamarin.MacCatalyst.Stable.Legacy SDK API diff: 15.1.0 vs 15.3.0
List of API changes between Xamarin.MacCatalyst.Stable.Legacy versions 15.1.0 and 15.3.0.
spouliot
sepoulio
10/27/2021
article
ec1d8e49-750c-ae22-a79e-63df7e8b19ca
xamarin

Xamarin.MacCatalyst.Stable.Legacy SDK API diff: 15.1.0 vs 15.3.0

Namespace AVFoundation

Type Changed: AVFoundation.AVAssetExportSession

Added property:

public static Foundation.NSString PresetAppleProRes4444Lpcm { get; }

Type Changed: AVFoundation.AVCaptureDevice

Added properties:

public virtual AVCaptureDevice ActivePrimaryConstituentDevice { get; }
public virtual AVCapturePrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions ActivePrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions { get; }
public virtual AVCapturePrimaryConstituentDeviceSwitchingBehavior ActivePrimaryConstituentDeviceSwitchingBehavior { get; }
public virtual AVCaptureDevice[] FallbackPrimaryConstituentDevices { get; set; }
public virtual AVCapturePrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions PrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions { get; }
public virtual AVCapturePrimaryConstituentDeviceSwitchingBehavior PrimaryConstituentDeviceSwitchingBehavior { get; }
public virtual AVCaptureDevice[] SupportedFallbackPrimaryConstituentDevices { get; }

Added methods:

protected override void Dispose (bool disposing);
public virtual void SetPrimaryConstituentDeviceSwitchingBehavior (AVCapturePrimaryConstituentDeviceSwitchingBehavior switchingBehavior, AVCapturePrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions restrictedSwitchingBehaviorConditions);

Type Changed: AVFoundation.AVCaptureMovieFileOutput

Added properties:

public virtual AVCapturePrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions PrimaryConstituentDeviceRestrictedSwitchingBehaviorConditionsForRecording { get; }
public virtual AVCapturePrimaryConstituentDeviceSwitchingBehavior PrimaryConstituentDeviceSwitchingBehaviorForRecording { get; }
public virtual bool PrimaryConstituentDeviceSwitchingBehaviorForRecordingEnabled { get; set; }

Added method:

public virtual void SetPrimaryConstituentDeviceSwitchingBehaviorForRecording (AVCapturePrimaryConstituentDeviceSwitchingBehavior switchingBehavior, AVCapturePrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions restrictedSwitchingBehaviorConditions);

Type Changed: AVFoundation.AVPlayerItem

Type Changed: AVFoundation.AVPlayerItem.Notifications

Removed methods:

public static Foundation.NSObject ObserveTimeJumped (System.EventHandler<AVPlayerItemTimeJumpedEventArgs> handler);
public static Foundation.NSObject ObserveTimeJumped (Foundation.NSObject objectToObserve, System.EventHandler<AVPlayerItemTimeJumpedEventArgs> handler);

Added methods:

public static Foundation.NSObject ObserveTimeJumped (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveTimeJumped (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);

Removed Type AVFoundation.AVPlayerItemTimeJumpedEventArgs

New Type: AVFoundation.AVAssetExportPresetApple

public static class AVAssetExportPresetApple {
	// properties
	public static Foundation.NSString ProRes422Lpcm { get; }
}

New Type: AVFoundation.AVCapturePrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions

[Serializable]
[Flags]
public enum AVCapturePrimaryConstituentDeviceRestrictedSwitchingBehaviorConditions {
	ExposureModeChanged = 4,
	FocusModeChanged = 2,
	None = 0,
	VideoZoomChanged = 1,
}

New Type: AVFoundation.AVCapturePrimaryConstituentDeviceSwitchingBehavior

[Serializable]
public enum AVCapturePrimaryConstituentDeviceSwitchingBehavior {
	Auto = 1,
	Locked = 3,
	Restricted = 2,
	Unsupported = 0,
}

Namespace AddressBook

Type Changed: AddressBook.ABAddressBook

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected override void ~ABAddressBook ();

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Type Changed: AddressBook.ABMultiValue`1

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~ABMultiValue ();

Type Changed: AddressBook.ABRecord

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected override void ~ABRecord ();

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Namespace CoreFoundation

Type Changed: CoreFoundation.CFAllocator

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Obsoleted constructors:

 [Obsolete ("Use the overload that takes a 'bool owns' parameter instead.")]
 public CFAllocator (IntPtr handle);

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CFAllocator ();

Type Changed: CoreFoundation.CFArray

Added methods:

public static T[] ArrayFromHandle<T> (IntPtr handle, bool releaseHandle);
public static T[] ArrayFromHandleFunc<T> (IntPtr handle, System.Func<System.IntPtr,T> createObject);
public static T[] ArrayFromHandleFunc<T> (IntPtr handle, System.Func<System.IntPtr,T> createObject, bool releaseHandle);
public static IntPtr Create (string[] values);
public static CFArray FromStrings (string[] items);
public static string[] StringArrayFromHandle (IntPtr handle, bool releaseHandle);

Type Changed: CoreFoundation.CFBundle

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CFBundle ();

Type Changed: CoreFoundation.CFMachPort

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Modified constructors:

-public CFMachPort (IntPtr handle, bool ownsHandle)
+public CFMachPort (IntPtr handle, bool owns)

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
public virtual void Dispose (bool disposing);
protected override void ~CFMachPort ();

Type Changed: CoreFoundation.CFMessagePort

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

protected void Check ();
public virtual void Dispose ();
protected override void ~CFMessagePort ();

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Type Changed: CoreFoundation.CFNotificationCenter

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CFNotificationCenter ();

Type Changed: CoreFoundation.CFPropertyList

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
public virtual void Dispose (bool disposing);
protected override void ~CFPropertyList ();

Type Changed: CoreFoundation.CFReadStream

Added interface:

ICFType

Type Changed: CoreFoundation.CFSocket

Added interface:

ICFType

Type Changed: CoreFoundation.CFStream

Removed constructor:

protected CFStream (IntPtr handle);

Added constructor:

protected CFStream (IntPtr handle, bool owns);

Added interface:

ICFType

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected override void ~CFStream ();

Obsoleted methods:

 [Obsolete ("Call 'GetCheckedHandle ()' instead.")]
 protected void CheckHandle ();

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Type Changed: CoreFoundation.CFType

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Added interfaces:

ICFType
ObjCRuntime.INativeObject
System.IDisposable

Type Changed: CoreFoundation.CFWriteStream

Added interface:

ICFType

Type Changed: CoreFoundation.NativeObject

Added constructor:

protected NativeObject (IntPtr handle, bool owns, bool verify);

Namespace CoreGraphics

Type Changed: CoreGraphics.CGColor

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGColor ();

Added methods:

protected override void Release ();
protected override void Retain ();

Type Changed: CoreGraphics.CGColorConverter

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGColorConverter ();

Type Changed: CoreGraphics.CGColorSpace

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGColorSpace ();

Added methods:

protected override void Release ();
protected override void Retain ();

Type Changed: CoreGraphics.CGContext

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGContext ();

Added methods:

protected override void Release ();
protected override void Retain ();

Type Changed: CoreGraphics.CGDataConsumer

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGDataConsumer ();

Added methods:

protected override void Release ();
protected override void Retain ();

Type Changed: CoreGraphics.CGDataProvider

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGDataProvider ();

Added methods:

protected override void Release ();
protected override void Retain ();

Type Changed: CoreGraphics.CGEvent

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
public void Dispose (bool disposing);
protected override void ~CGEvent ();

Type Changed: CoreGraphics.CGEventSource

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Modified constructors:

-public CGEventSource (IntPtr handle, bool ownsHandle)
+public CGEventSource (IntPtr handle, bool owns)

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
public void Dispose (bool disposing);
protected override void ~CGEventSource ();

Type Changed: CoreGraphics.CGFunction

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGFunction ();

Added methods:

protected override void Release ();
protected override void Retain ();

Type Changed: CoreGraphics.CGGradient

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGGradient ();

Added methods:

protected override void Release ();
protected override void Retain ();

Type Changed: CoreGraphics.CGShading

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CGShading ();

Added methods:

protected override void Release ();
protected override void Retain ();

Namespace CoreMedia

Type Changed: CoreMedia.CMBlockBuffer

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CMBlockBuffer ();

Type Changed: CoreMedia.CMBufferQueue

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected override void ~CMBufferQueue ();

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Type Changed: CoreMedia.CMClockOrTimebase

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CMClockOrTimebase ();

Type Changed: CoreMedia.CMFormatDescription

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CMFormatDescription ();

Type Changed: CoreMedia.CMMemoryPool

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CMMemoryPool ();

Type Changed: CoreMedia.CMSampleBuffer

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected override void ~CMSampleBuffer ();

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Type Changed: CoreMedia.CMVideoCodecType

Added values:

DepthHevc = 1684369512,
DisparityHevc = 1684632424,

Namespace CoreServices

Type Changed: CoreServices.CFHTTPAuthentication

Added interface:

CoreFoundation.ICFType

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

protected void CheckHandle ();
public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CFHTTPAuthentication ();

Type Changed: CoreServices.CFHTTPMessage

Added interface:

CoreFoundation.ICFType

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

protected void CheckHandle ();
public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CFHTTPMessage ();

Type Changed: CoreServices.CFHTTPStream

Added interface:

CoreFoundation.ICFType

Namespace CoreText

Type Changed: CoreText.CTFont

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CTFont ();

Namespace CoreWlan

Removed Type CoreWlan.CWChannel

Removed Type CoreWlan.CWChannelBand

Removed Type CoreWlan.CWChannelWidth

Removed Type CoreWlan.CWCipherKeyFlags

Removed Type CoreWlan.CWConfiguration

Removed Type CoreWlan.CWEventType

Removed Type CoreWlan.CWIbssModeSecurity

Removed Type CoreWlan.CWInterface

Removed Type CoreWlan.CWInterfaceMode

Removed Type CoreWlan.CWKeychain

Removed Type CoreWlan.CWKeychainDomain

Removed Type CoreWlan.CWMutableConfiguration

Removed Type CoreWlan.CWMutableNetworkProfile

Removed Type CoreWlan.CWNetwork

Removed Type CoreWlan.CWNetworkProfile

Removed Type CoreWlan.CWPhyMode

Removed Type CoreWlan.CWSecurity

Removed Type CoreWlan.CWStatus

Removed Type CoreWlan.CWStatusExtensions

Removed Type CoreWlan.CWWiFiClient

Namespace Foundation

Type Changed: Foundation.NSArray

Added method:

public static T[] ArrayFromHandle<T> (IntPtr handle, System.Converter<System.IntPtr,T> creator, bool releaseHandle);

Namespace GameController

New Type: GameController.GCProductCategory

public static class GCProductCategory {
	// properties
	public static Foundation.NSString CoalescedRemote { get; }
	public static Foundation.NSString ControlCenterRemote { get; }
	public static Foundation.NSString DualSense { get; }
	public static Foundation.NSString DualShock4 { get; }
	public static Foundation.NSString Keyboard { get; }
	public static Foundation.NSString MFi { get; }
	public static Foundation.NSString Mouse { get; }
	public static Foundation.NSString SiriRemote1stGen { get; }
	public static Foundation.NSString SiriRemote2ndGen { get; }
	public static Foundation.NSString UniversalElectronicsRemote { get; }
	public static Foundation.NSString XboxOne { get; }
}

Namespace NetworkExtension

Type Changed: NetworkExtension.NEFilterDataProvider

Removed methods:

public virtual void ApplySettings (NEFilterSettings settings, System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task ApplySettingsAsync (NEFilterSettings settings);
public virtual void ResumeFlow (NEFilterFlow flow, NEFilterVerdict verdict);
public virtual void UpdateFlow (NEFilterSocketFlow flow, NEFilterDataVerdict verdict, NETrafficDirection direction);

Type Changed: NetworkExtension.NEFilterDataVerdict

Removed property:

public virtual NEFilterReportFrequency StatisticsReportFrequency { get; set; }

Type Changed: NetworkExtension.NEFilterManager

Removed property:

public virtual NEFilterManagerGrade Grade { get; set; }

Type Changed: NetworkExtension.NEFilterNewFlowVerdict

Removed property:

public virtual NEFilterReportFrequency StatisticsReportFrequency { get; set; }

Removed Type NetworkExtension.NEFilterDataAttribute

Removed Type NetworkExtension.NEFilterManagerGrade

Removed Type NetworkExtension.NEFilterPacketContext

Removed Type NetworkExtension.NEFilterPacketHandler

Removed Type NetworkExtension.NEFilterPacketProvider

Removed Type NetworkExtension.NEFilterPacketProviderVerdict

Removed Type NetworkExtension.NEFilterReportFrequency

Removed Type NetworkExtension.NEFilterRule

Removed Type NetworkExtension.NEFilterSettings

Removed Type NetworkExtension.NENetworkRule

Removed Type NetworkExtension.NENetworkRuleProtocol

Removed Type NetworkExtension.NETransparentProxyManager

Removed Type NetworkExtension.NETransparentProxyNetworkSettings

Removed Type NetworkExtension.NETransparentProxyProvider

Namespace ObjCRuntime

Type Changed: ObjCRuntime.BaseWrapper

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

protected override IntPtr Handle { get; set; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~BaseWrapper ();

Added methods:

protected override void Release ();
protected override void Retain ();

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string Version = "15.1.0";
+public const string Version = "15.3.0";

Type Changed: ObjCRuntime.Dlfcn

Added methods:

public static System.UIntPtr GetUIntPtr (IntPtr handle, string symbol);
public static void SetUIntPtr (IntPtr handle, string symbol, System.UIntPtr value);

Namespace PassKit

Type Changed: PassKit.PKPaymentNetwork

Added properties:

public static Foundation.NSString Nanaco { get; }
public static Foundation.NSString Waon { get; }

Namespace Security

Type Changed: Security.SecPolicy

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~SecPolicy ();

Type Changed: Security.SecTrust

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~SecTrust ();

Type Changed: Security.SslContext

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected override void ~SslContext ();

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Namespace System

Type Changed: System.nuint

Added methods:

public static nuint op_Explicit (UIntPtr v);
public static UIntPtr op_Explicit (nuint v);

Namespace SystemConfiguration

Type Changed: SystemConfiguration.NetworkReachability

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~NetworkReachability ();

Namespace UserNotifications

Removed Type UserNotifications.UNLocationNotificationTrigger

Namespace VideoToolbox

Type Changed: VideoToolbox.VTDecompressionSession

Removed methods:

public void Dispose ();
protected override void ~VTDecompressionSession ();

Type Changed: VideoToolbox.VTFrameSilo

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~VTFrameSilo ();

Type Changed: VideoToolbox.VTMultiPassStorage

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected override void ~VTMultiPassStorage ();

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Type Changed: VideoToolbox.VTSession

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~VTSession ();

Namespace WebKit

Type Changed: WebKit.WKPreferences

Modified properties:

-public virtual bool TextInteractionEnabled { get; set; }
+public bool TextInteractionEnabled { get; set; }

Type Changed: WebKit.WKUIDelegate

Added methods:

public virtual void RequestDeviceOrientationAndMotionPermission (WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame, System.Action<WKPermissionDecision> decisionHandler);
public virtual void RequestMediaCapturePermission (WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame, WKMediaCaptureType type, System.Action<WKPermissionDecision> decisionHandler);

Type Changed: WebKit.WKUIDelegate_Extensions

Added methods:

public static void RequestDeviceOrientationAndMotionPermission (this IWKUIDelegate This, WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame, System.Action<WKPermissionDecision> decisionHandler);
public static System.Threading.Tasks.Task<WKPermissionDecision> RequestDeviceOrientationAndMotionPermissionAsync (this IWKUIDelegate This, WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame);
public static void RequestMediaCapturePermission (this IWKUIDelegate This, WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame, WKMediaCaptureType type, System.Action<WKPermissionDecision> decisionHandler);
public static System.Threading.Tasks.Task<WKPermissionDecision> RequestMediaCapturePermissionAsync (this IWKUIDelegate This, WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame, WKMediaCaptureType type);

Type Changed: WebKit.WKWebView

Added properties:

public virtual WKMediaCaptureState CameraCaptureState { get; }
public virtual Foundation.NSObject InteractionState { get; set; }
public virtual WKMediaCaptureState MicrophoneCaptureState { get; }
public virtual UIKit.UIColor ThemeColor { get; }
public virtual UIKit.UIColor UnderPageBackgroundColor { get; set; }

Added methods:

public virtual void CloseAllMediaPresentations (System.Action completionHandler);
public virtual System.Threading.Tasks.Task CloseAllMediaPresentationsAsync ();
public virtual WKNavigation LoadFileRequest (Foundation.NSUrlRequest request, Foundation.NSUrl readAccessURL);
public virtual WKNavigation LoadSimulatedRequest (Foundation.NSUrlRequest request, string htmlString);
public virtual WKNavigation LoadSimulatedRequest (Foundation.NSUrlRequest request, Foundation.NSUrlResponse response, Foundation.NSData data);
public virtual void PauseAllMediaPlayback (System.Action completionHandler);
public virtual System.Threading.Tasks.Task PauseAllMediaPlaybackAsync ();
public virtual void RequestMediaPlaybackState (System.Action<WKMediaPlaybackState> completionHandler);
public virtual System.Threading.Tasks.Task<WKMediaPlaybackState> RequestMediaPlaybackStateAsync ();
public virtual void SetAllMediaPlaybackSuspended (bool suspended, System.Action completionHandler);
public virtual System.Threading.Tasks.Task SetAllMediaPlaybackSuspendedAsync (bool suspended);
public virtual void SetCameraCaptureState (WKMediaCaptureState state, System.Action completionHandler);
public virtual System.Threading.Tasks.Task SetCameraCaptureStateAsync (WKMediaCaptureState state);
public virtual void SetMicrophoneCaptureState (WKMediaCaptureState state, System.Action completionHandler);
public virtual System.Threading.Tasks.Task SetMicrophoneCaptureStateAsync (WKMediaCaptureState state);

Type Changed: WebKit.WKWebViewConfiguration

Added property:

public virtual bool UpgradeKnownHostsToHttps { get; set; }

New Type: WebKit.WKMediaCaptureState

[Serializable]
public enum WKMediaCaptureState {
	Active = 1,
	Muted = 2,
	None = 0,
}

New Type: WebKit.WKMediaCaptureType

[Serializable]
public enum WKMediaCaptureType {
	Camera = 0,
	CameraAndMicrophone = 2,
	Microphone = 1,
}

New Type: WebKit.WKPermissionDecision

[Serializable]
public enum WKPermissionDecision {
	Deny = 2,
	Grant = 1,
	Prompt = 0,
}

New Namespace IntentsUI

New Type: IntentsUI.IINUIAddVoiceShortcutButtonDelegate

public interface IINUIAddVoiceShortcutButtonDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void PresentAddVoiceShortcut (INUIAddVoiceShortcutViewController addVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton);
	public virtual void PresentEditVoiceShortcut (INUIEditVoiceShortcutViewController editVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton);
}

New Type: IntentsUI.IINUIAddVoiceShortcutViewControllerDelegate

public interface IINUIAddVoiceShortcutViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidCancel (INUIAddVoiceShortcutViewController controller);
	public virtual void DidFinish (INUIAddVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error);
}

New Type: IntentsUI.IINUIEditVoiceShortcutViewControllerDelegate

public interface IINUIEditVoiceShortcutViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidCancel (INUIEditVoiceShortcutViewController controller);
	public virtual void DidDelete (INUIEditVoiceShortcutViewController controller, Foundation.NSUuid deletedVoiceShortcutIdentifier);
	public virtual void DidUpdate (INUIEditVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error);
}

New Type: IntentsUI.IINUIHostedViewControlling

public interface IINUIHostedViewControlling : ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: IntentsUI.IINUIHostedViewSiriProviding

public interface IINUIHostedViewSiriProviding : ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: IntentsUI.INUIAddVoiceShortcutButton

public class INUIAddVoiceShortcutButton : UIKit.UIButton, AppKit.INSTouchBarProvider, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityContentSizeCategoryImageAdjusting, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContextMenuInteractionDelegate, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUISpringLoadedInteractionSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public INUIAddVoiceShortcutButton (Foundation.NSCoder coder);
	protected INUIAddVoiceShortcutButton (Foundation.NSObjectFlag t);
	public INUIAddVoiceShortcutButton (INUIAddVoiceShortcutButtonStyle style);
	protected INUIAddVoiceShortcutButton (IntPtr handle);
	// properties
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nfloat CornerRadius { get; set; }
	public IINUIAddVoiceShortcutButtonDelegate Delegate { get; set; }
	public virtual Intents.INShortcut Shortcut { get; set; }
	public virtual INUIAddVoiceShortcutButtonStyle Style { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance<T> ();
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void SetStyle (INUIAddVoiceShortcutButtonStyle style);

	// inner types
	public class INUIAddVoiceShortcutButtonAppearance : UIKit.UIButton+UIButtonAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance (IntPtr handle);
	}
}

New Type: IntentsUI.INUIAddVoiceShortcutButtonDelegate

public abstract class INUIAddVoiceShortcutButtonDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IINUIAddVoiceShortcutButtonDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INUIAddVoiceShortcutButtonDelegate ();
	protected INUIAddVoiceShortcutButtonDelegate (Foundation.NSObjectFlag t);
	protected INUIAddVoiceShortcutButtonDelegate (IntPtr handle);
	// methods
	public virtual void PresentAddVoiceShortcut (INUIAddVoiceShortcutViewController addVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton);
	public virtual void PresentEditVoiceShortcut (INUIEditVoiceShortcutViewController editVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton);
}

New Type: IntentsUI.INUIAddVoiceShortcutButtonStyle

[Serializable]
public enum INUIAddVoiceShortcutButtonStyle {
	Automatic = 4,
	AutomaticOutLine = 5,
	Black = 2,
	BlackOutline = 3,
	White = 0,
	WhiteOutline = 1,
}

New Type: IntentsUI.INUIAddVoiceShortcutViewController

public class INUIAddVoiceShortcutViewController : UIKit.UIViewController, AppKit.INSTouchBarProvider, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public INUIAddVoiceShortcutViewController (Foundation.NSCoder coder);
	protected INUIAddVoiceShortcutViewController (Foundation.NSObjectFlag t);
	public INUIAddVoiceShortcutViewController (Intents.INShortcut shortcut);
	protected INUIAddVoiceShortcutViewController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IINUIAddVoiceShortcutViewControllerDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: IntentsUI.INUIAddVoiceShortcutViewControllerDelegate

public abstract class INUIAddVoiceShortcutViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IINUIAddVoiceShortcutViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INUIAddVoiceShortcutViewControllerDelegate ();
	protected INUIAddVoiceShortcutViewControllerDelegate (Foundation.NSObjectFlag t);
	protected INUIAddVoiceShortcutViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidCancel (INUIAddVoiceShortcutViewController controller);
	public virtual void DidFinish (INUIAddVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error);
}

New Type: IntentsUI.INUIEditVoiceShortcutViewController

public class INUIEditVoiceShortcutViewController : UIKit.UIViewController, AppKit.INSTouchBarProvider, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public INUIEditVoiceShortcutViewController (Foundation.NSCoder coder);
	protected INUIEditVoiceShortcutViewController (Foundation.NSObjectFlag t);
	public INUIEditVoiceShortcutViewController (Intents.INVoiceShortcut voiceShortcut);
	protected INUIEditVoiceShortcutViewController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IINUIEditVoiceShortcutViewControllerDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: IntentsUI.INUIEditVoiceShortcutViewControllerDelegate

public abstract class INUIEditVoiceShortcutViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IINUIEditVoiceShortcutViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INUIEditVoiceShortcutViewControllerDelegate ();
	protected INUIEditVoiceShortcutViewControllerDelegate (Foundation.NSObjectFlag t);
	protected INUIEditVoiceShortcutViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidCancel (INUIEditVoiceShortcutViewController controller);
	public virtual void DidDelete (INUIEditVoiceShortcutViewController controller, Foundation.NSUuid deletedVoiceShortcutIdentifier);
	public virtual void DidUpdate (INUIEditVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error);
}

New Type: IntentsUI.INUIHostedViewContext

[Serializable]
public enum INUIHostedViewContext {
	MapsCard = 1,
	SiriSnippet = 0,
}

New Type: IntentsUI.INUIHostedViewControllingConfigureViewHandler

public sealed delegate INUIHostedViewControllingConfigureViewHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public INUIHostedViewControllingConfigureViewHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (bool success, Foundation.NSSet<Intents.INParameter> configuredParameters, CoreGraphics.CGSize desiredSize, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (bool success, Foundation.NSSet<Intents.INParameter> configuredParameters, CoreGraphics.CGSize desiredSize);
}

New Type: IntentsUI.INUIHostedViewControlling_Extensions

public static class INUIHostedViewControlling_Extensions {
	// methods
	public static void Configure (this IINUIHostedViewControlling This, Intents.INInteraction interaction, INUIHostedViewContext context, System.Action<CoreGraphics.CGSize> completion);
	public static void ConfigureView (this IINUIHostedViewControlling This, Foundation.NSSet<Intents.INParameter> parameters, Intents.INInteraction interaction, INUIInteractiveBehavior interactiveBehavior, INUIHostedViewContext context, INUIHostedViewControllingConfigureViewHandler completionHandler);
}

New Type: IntentsUI.INUIHostedViewSiriProviding_Extensions

public static class INUIHostedViewSiriProviding_Extensions {
	// methods
	public static bool GetDisplaysMap (this IINUIHostedViewSiriProviding This);
	public static bool GetDisplaysMessage (this IINUIHostedViewSiriProviding This);
	public static bool GetDisplaysPaymentTransaction (this IINUIHostedViewSiriProviding This);
}

New Type: IntentsUI.INUIInteractiveBehavior

[Serializable]
public enum INUIInteractiveBehavior {
	GenericAction = 3,
	Launch = 2,
	NextView = 1,
	None = 0,
}

New Type: IntentsUI.NSExtensionContext_INUIHostedViewControlling

public static class NSExtensionContext_INUIHostedViewControlling {
	// methods
	public static CoreGraphics.CGSize GetHostedViewMaximumAllowedSize (this Foundation.NSExtensionContext This);
	public static CoreGraphics.CGSize GetHostedViewMinimumAllowedSize (this Foundation.NSExtensionContext This);
	public static string GetInterfaceParametersDescription (this Foundation.NSExtensionContext This);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment