Skip to content

Instantly share code, notes, and snippets.

@vs-mobiletools-engineering-service2
Created August 22, 2024 13:49
Show Gist options
  • Save vs-mobiletools-engineering-service2/05128878db2768b6e45c933d323147fd to your computer and use it in GitHub Desktop.
Save vs-mobiletools-engineering-service2/05128878db2768b6e45c933d323147fd to your computer and use it in GitHub Desktop.
stable-api-comparison/diff/dotnet/Microsoft.iOS.Ref/ref/net8.0/Microsoft.iOS.md

API diff: Microsoft.iOS.dll

Microsoft.iOS.dll

Assembly Version Changed: 17.2.0.0 -> 17.5.0.0

Namespace ARKit

Type Changed: ARKit.IARCoachingOverlayViewDelegate

Added methods:

public virtual void DidDeactivate (ARCoachingOverlayView coachingOverlayView);
public virtual void DidRequestSessionReset (ARCoachingOverlayView coachingOverlayView);
public virtual void WillActivate (ARCoachingOverlayView coachingOverlayView);

Type Changed: ARKit.IARSCNViewDelegate

Added methods:

public virtual void DidAddNode (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
public virtual void DidRemoveNode (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
public virtual void DidUpdateNode (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
public virtual SceneKit.SCNNode GetNode (SceneKit.ISCNSceneRenderer renderer, ARAnchor anchor);
public virtual void WillUpdateNode (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);

Type Changed: ARKit.IARSKViewDelegate

Added methods:

public virtual void DidAddNode (ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
public virtual void DidRemoveNode (ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
public virtual void DidUpdateNode (ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
public virtual SpriteKit.SKNode GetNode (ARSKView view, ARAnchor anchor);
public virtual void WillUpdateNode (ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);

Type Changed: ARKit.IARSessionDelegate

Added methods:

public virtual void DidAddAnchors (ARSession session, ARAnchor[] anchors);
public virtual void DidRemoveAnchors (ARSession session, ARAnchor[] anchors);
public virtual void DidUpdateAnchors (ARSession session, ARAnchor[] anchors);
public virtual void DidUpdateFrame (ARSession session, ARFrame frame);

Type Changed: ARKit.IARSessionObserver

Added methods:

public virtual void CameraDidChangeTrackingState (ARSession session, ARCamera camera);
public virtual void DidChangeGeoTrackingStatus (ARSession session, ARGeoTrackingStatus geoTrackingStatus);
public virtual void DidFail (ARSession session, Foundation.NSError error);
public virtual void DidOutputAudioSampleBuffer (ARSession session, CoreMedia.CMSampleBuffer audioSampleBuffer);
public virtual void DidOutputCollaborationData (ARSession session, ARCollaborationData data);
public virtual void InterruptionEnded (ARSession session);
public virtual bool ShouldAttemptRelocalization (ARSession session);
public virtual void WasInterrupted (ARSession session);

Type Changed: ARKit.IARSessionProviding

Modified properties:

-public abstract ARSession Session { get; }
+public virtual ARSession Session { get; }

Type Changed: ARKit.IARTrackable

Modified properties:

-public abstract bool IsTracked { get; }
+public virtual bool IsTracked { get; }

Namespace AVFoundation

Type Changed: AVFoundation.AVAssetDownloadDelegate

Added methods:

public virtual void DidReceiveInformationalResponse (Foundation.NSUrlSession session, Foundation.NSUrlSessionTask task, Foundation.NSHttpUrlResponse response);
public virtual void NeedNewBodyStream (Foundation.NSUrlSession session, Foundation.NSUrlSessionTask task, long offset, System.Action<Foundation.NSInputStream> completionHandler);

Type Changed: AVFoundation.AVAudioSourceNode

Obsoleted constructors:

 [Obsolete ("Use the overload that takes a delegate that does not take a 'ref AudioBuffers' instead. Assigning a value to the 'inputData' parameter in the callback has no effect.")]
 public AVAudioSourceNode (AVAudioSourceNodeRenderHandler renderHandler);
 [Obsolete ("Use the overload that takes a delegate that does not take a 'ref AudioBuffers' instead. Assigning a value to the 'inputData' parameter in the callback has no effect.")]
 public AVAudioSourceNode (AVAudioFormat format, AVAudioSourceNodeRenderHandler renderHandler);

Added constructors:

public AVAudioSourceNode (AVAudioSourceNodeRenderHandler3 renderHandler);
public AVAudioSourceNode (AVAudioSourceNodeRenderHandlerRaw renderHandler);
public AVAudioSourceNode (AVAudioFormat format, AVAudioSourceNodeRenderHandler3 renderHandler);
public AVAudioSourceNode (AVAudioFormat format, AVAudioSourceNodeRenderHandlerRaw renderHandler);

Type Changed: AVFoundation.AVPlayerItemErrorLogEvent

Added property:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> AllHttpResponseHeaderFields { get; }

Type Changed: AVFoundation.AVSpeechSynthesizer

Obsoleted methods:

 [Obsolete ("Do not use this API, it doesn't work correctly. Use the non-Async version (WriteUtterance) instead.")]
 public virtual System.Threading.Tasks.Task<AVAudioBuffer> WriteUtteranceAsync (AVSpeechUtterance utterance);

Type Changed: AVFoundation.IAVAssetDownloadDelegate

Added methods:

public virtual void DidCompleteForMediaSelection (Foundation.NSUrlSession session, AVAggregateAssetDownloadTask aggregateAssetDownloadTask, AVMediaSelection mediaSelection);
public virtual void DidFinishDownloadingToUrl (Foundation.NSUrlSession session, AVAssetDownloadTask assetDownloadTask, Foundation.NSUrl location);
public virtual void DidLoadTimeRange (Foundation.NSUrlSession session, AVAssetDownloadTask assetDownloadTask, CoreMedia.CMTimeRange timeRange, Foundation.NSValue[] loadedTimeRanges, CoreMedia.CMTimeRange timeRangeExpectedToLoad);
public virtual void DidLoadTimeRange (Foundation.NSUrlSession session, AVAggregateAssetDownloadTask aggregateAssetDownloadTask, CoreMedia.CMTimeRange timeRange, Foundation.NSValue[] loadedTimeRanges, CoreMedia.CMTimeRange timeRangeExpectedToLoad, AVMediaSelection mediaSelection);
public virtual void DidResolveMediaSelection (Foundation.NSUrlSession session, AVAssetDownloadTask assetDownloadTask, AVMediaSelection resolvedMediaSelection);
public virtual void WillDownloadToUrl (Foundation.NSUrlSession session, AVAggregateAssetDownloadTask aggregateAssetDownloadTask, Foundation.NSUrl location);
public virtual void WillDownloadVariants (Foundation.NSUrlSession session, AVAssetDownloadTask assetDownloadTask, AVAssetVariant[] variants);

Type Changed: AVFoundation.IAVAssetResourceLoaderDelegate

Added methods:

public virtual void DidCancelAuthenticationChallenge (AVAssetResourceLoader resourceLoader, Foundation.NSUrlAuthenticationChallenge authenticationChallenge);
public virtual void DidCancelLoadingRequest (AVAssetResourceLoader resourceLoader, AVAssetResourceLoadingRequest loadingRequest);
public virtual bool ShouldWaitForLoadingOfRequestedResource (AVAssetResourceLoader resourceLoader, AVAssetResourceLoadingRequest loadingRequest);
public virtual bool ShouldWaitForRenewalOfRequestedResource (AVAssetResourceLoader resourceLoader, AVAssetResourceRenewalRequest renewalRequest);
public virtual bool ShouldWaitForResponseToAuthenticationChallenge (AVAssetResourceLoader resourceLoader, Foundation.NSUrlAuthenticationChallenge authenticationChallenge);

Type Changed: AVFoundation.IAVAssetWriterDelegate

Added methods:

public virtual void DidOutputSegmentData (AVAssetWriter writer, Foundation.NSData segmentData, AVAssetSegmentType segmentType);
public virtual void DidOutputSegmentData (AVAssetWriter writer, Foundation.NSData segmentData, AVAssetSegmentType segmentType, AVAssetSegmentReport segmentReport);

Type Changed: AVFoundation.IAVAsynchronousKeyValueLoading

Modified methods:

-public abstract AVKeyValueStatus GetStatusOfValue (string forKey, out Foundation.NSError error)
+public virtual AVKeyValueStatus GetStatusOfValue (string forKey, out Foundation.NSError error)
-public abstract void LoadValuesAsynchronously (string[] keys, System.Action handler)
+public virtual void LoadValuesAsynchronously (string[] keys, System.Action handler)

Type Changed: AVFoundation.IAVAudio3DMixing

Modified properties:

-public abstract float Obstruction { get; set; }
+public virtual float Obstruction { get; set; }
-public abstract float Occlusion { get; set; }
+public virtual float Occlusion { get; set; }
-public abstract AVAudio3DMixingPointSourceInHeadMode PointSourceInHeadMode { get; set; }
+public virtual AVAudio3DMixingPointSourceInHeadMode PointSourceInHeadMode { get; set; }
-public abstract System.Numerics.Vector3 Position { get; set; }
+public virtual System.Numerics.Vector3 Position { get; set; }
-public abstract float Rate { get; set; }
+public virtual float Rate { get; set; }
-public abstract AVAudio3DMixingRenderingAlgorithm RenderingAlgorithm { get; set; }
+public virtual AVAudio3DMixingRenderingAlgorithm RenderingAlgorithm { get; set; }
-public abstract float ReverbBlend { get; set; }
+public virtual float ReverbBlend { get; set; }
-public abstract AVAudio3DMixingSourceMode SourceMode { get; set; }
+public virtual AVAudio3DMixingSourceMode SourceMode { get; set; }

Type Changed: AVFoundation.IAVAudioMixing

Modified properties:

-public abstract float Volume { get; set; }
+public virtual float Volume { get; set; }

Modified methods:

-public abstract AVAudioMixingDestination DestinationForMixer (AVAudioNode mixer, UIntPtr bus)
+public virtual AVAudioMixingDestination DestinationForMixer (AVAudioNode mixer, UIntPtr bus)

Type Changed: AVFoundation.IAVAudioPlayerDelegate

Added methods:

public virtual void BeginInterruption (AVAudioPlayer player);
public virtual void DecoderError (AVAudioPlayer player, Foundation.NSError error);
public virtual void EndInterruption (AVAudioPlayer player);
public virtual void EndInterruption (AVAudioPlayer player, AVAudioSessionInterruptionOptions flags);
public virtual void FinishedPlaying (AVAudioPlayer player, bool flag);

Type Changed: AVFoundation.IAVAudioRecorderDelegate

Added methods:

public virtual void BeginInterruption (AVAudioRecorder recorder);
public virtual void EncoderError (AVAudioRecorder recorder, Foundation.NSError error);
public virtual void EndInterruption (AVAudioRecorder recorder);
public virtual void EndInterruption (AVAudioRecorder recorder, AVAudioSessionInterruptionOptions flags);
public virtual void FinishedRecording (AVAudioRecorder recorder, bool flag);

Type Changed: AVFoundation.IAVAudioSessionDelegate

Added methods:

public virtual void BeginInterruption ();
public virtual void EndInterruption ();
public virtual void EndInterruption (AVAudioSessionInterruptionOptions flags);
public virtual void InputIsAvailableChanged (bool isInputAvailable);

Type Changed: AVFoundation.IAVAudioStereoMixing

Modified properties:

-public abstract float Pan { get; set; }
+public virtual float Pan { get; set; }

Type Changed: AVFoundation.IAVCaptureAudioDataOutputSampleBufferDelegate

Added method:

public virtual void DidOutputSampleBuffer (AVCaptureOutput captureOutput, CoreMedia.CMSampleBuffer sampleBuffer, AVCaptureConnection connection);

Type Changed: AVFoundation.IAVCaptureDataOutputSynchronizerDelegate

Modified methods:

-public abstract void DidOutputSynchronizedDataCollection (AVCaptureDataOutputSynchronizer synchronizer, AVCaptureSynchronizedDataCollection synchronizedDataCollection)
+public virtual void DidOutputSynchronizedDataCollection (AVCaptureDataOutputSynchronizer synchronizer, AVCaptureSynchronizedDataCollection synchronizedDataCollection)

Type Changed: AVFoundation.IAVCaptureDepthDataOutputDelegate

Added methods:

public virtual void DidDropDepthData (AVCaptureDepthDataOutput output, AVDepthData depthData, CoreMedia.CMTime timestamp, AVCaptureConnection connection, AVCaptureOutputDataDroppedReason reason);
public virtual void DidOutputDepthData (AVCaptureDepthDataOutput output, AVDepthData depthData, CoreMedia.CMTime timestamp, AVCaptureConnection connection);

Type Changed: AVFoundation.IAVCaptureFileOutputRecordingDelegate

Modified methods:

-public abstract void FinishedRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, Foundation.NSObject[] connections, Foundation.NSError error)
+public virtual void FinishedRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, Foundation.NSObject[] connections, Foundation.NSError error)

Added method:

public virtual void DidStartRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, Foundation.NSObject[] connections);

Type Changed: AVFoundation.IAVCaptureMetadataOutputObjectsDelegate

Added method:

public virtual void DidOutputMetadataObjects (AVCaptureMetadataOutput captureOutput, AVMetadataObject[] metadataObjects, AVCaptureConnection connection);

Type Changed: AVFoundation.IAVCapturePhotoCaptureDelegate

Added methods:

public virtual void DidCapturePhoto (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
public virtual void DidFinishCapture (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings, Foundation.NSError error);
public virtual void DidFinishProcessingLivePhotoMovie (AVCapturePhotoOutput captureOutput, Foundation.NSUrl outputFileUrl, CoreMedia.CMTime duration, CoreMedia.CMTime photoDisplayTime, AVCaptureResolvedPhotoSettings resolvedSettings, Foundation.NSError error);
public virtual void DidFinishProcessingPhoto (AVCapturePhotoOutput output, AVCapturePhoto photo, Foundation.NSError error);
public virtual void DidFinishProcessingPhoto (AVCapturePhotoOutput captureOutput, CoreMedia.CMSampleBuffer photoSampleBuffer, CoreMedia.CMSampleBuffer previewPhotoSampleBuffer, AVCaptureResolvedPhotoSettings resolvedSettings, AVCaptureBracketedStillImageSettings bracketSettings, Foundation.NSError error);
public virtual void DidFinishProcessingRawPhoto (AVCapturePhotoOutput captureOutput, CoreMedia.CMSampleBuffer rawSampleBuffer, CoreMedia.CMSampleBuffer previewPhotoSampleBuffer, AVCaptureResolvedPhotoSettings resolvedSettings, AVCaptureBracketedStillImageSettings bracketSettings, Foundation.NSError error);
public virtual void DidFinishRecordingLivePhotoMovie (AVCapturePhotoOutput captureOutput, Foundation.NSUrl outputFileUrl, AVCaptureResolvedPhotoSettings resolvedSettings);
public virtual void WillBeginCapture (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
public virtual void WillCapturePhoto (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);

Type Changed: AVFoundation.IAVCapturePhotoFileDataRepresentationCustomizer

Added methods:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetReplacementAppleProRawCompressionSettings (AVCapturePhoto photo, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> defaultSettings, IntPtr maximumBitDepth);
public virtual AVDepthData GetReplacementDepthData (AVCapturePhoto photo);
public virtual CoreVideo.CVPixelBuffer GetReplacementEmbeddedThumbnail (out Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> replacementEmbeddedThumbnailPhotoFormatOut, AVCapturePhoto photo);
public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetReplacementMetadata (AVCapturePhoto photo);
public virtual AVPortraitEffectsMatte GetReplacementPortraitEffectsMatte (AVCapturePhoto photo);
public virtual AVSemanticSegmentationMatte GetReplacementSemanticSegmentationMatte (Foundation.NSString semanticSegmentationMatteType, AVCapturePhoto photo);

Type Changed: AVFoundation.IAVCaptureVideoDataOutputSampleBufferDelegate

Added methods:

public virtual void DidDropSampleBuffer (AVCaptureOutput captureOutput, CoreMedia.CMSampleBuffer sampleBuffer, AVCaptureConnection connection);
public virtual void DidOutputSampleBuffer (AVCaptureOutput captureOutput, CoreMedia.CMSampleBuffer sampleBuffer, AVCaptureConnection connection);

Type Changed: AVFoundation.IAVContentKeyRecipient

Modified properties:

-public abstract bool MayRequireContentKeysForMediaDataProcessing { get; }
+public virtual bool MayRequireContentKeysForMediaDataProcessing { get; }

Added method:

public virtual void DidProvideContentKey (AVContentKeySession contentKeySession, AVContentKey contentKey);

Type Changed: AVFoundation.IAVContentKeySessionDelegate

Modified methods:

-public abstract void DidProvideContentKeyRequest (AVContentKeySession session, AVContentKeyRequest keyRequest)
+public virtual void DidProvideContentKeyRequest (AVContentKeySession session, AVContentKeyRequest keyRequest)

Added methods:

public virtual void DidChange (AVContentKeySession session);
public virtual void DidFail (AVContentKeySession session, AVContentKeyRequest keyRequest, Foundation.NSError err);
public virtual void DidGenerateExpiredSessionReport (AVContentKeySession session);
public virtual void DidProvidePersistableContentKeyRequest (AVContentKeySession session, AVPersistableContentKeyRequest keyRequest);
public virtual void DidProvideRenewingContentKeyRequest (AVContentKeySession session, AVContentKeyRequest keyRequest);
public virtual void DidSucceed (AVContentKeySession session, AVContentKeyRequest keyRequest);
public virtual void DidUpdate (AVContentKeySession session, Foundation.NSData persistableContentKey, Foundation.NSObject keyIdentifier);
public virtual bool ShouldRetryContentKeyRequest (AVContentKeySession session, AVContentKeyRequest keyRequest, string retryReason);

Type Changed: AVFoundation.IAVFragmentMinding

Modified methods:

-public abstract bool IsAssociatedWithFragmentMinder ()
+public virtual bool IsAssociatedWithFragmentMinder ()

Type Changed: AVFoundation.IAVPlaybackCoordinatorPlaybackControlDelegate

Modified methods:

-public abstract void DidIssueBufferingCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorBufferingCommand bufferingCommand, System.Action completionHandler)
+public virtual void DidIssueBufferingCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorBufferingCommand bufferingCommand, System.Action completionHandler)
-public abstract void DidIssuePauseCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorPauseCommand pauseCommand, System.Action completionHandler)
+public virtual void DidIssuePauseCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorPauseCommand pauseCommand, System.Action completionHandler)
-public abstract void DidIssuePlayCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorPlayCommand playCommand, System.Action completionHandler)
+public virtual void DidIssuePlayCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorPlayCommand playCommand, System.Action completionHandler)
-public abstract void DidIssueSeekCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorSeekCommand seekCommand, System.Action completionHandler)
+public virtual void DidIssueSeekCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorSeekCommand seekCommand, System.Action completionHandler)

Type Changed: AVFoundation.IAVPlayerItemLegibleOutputPushDelegate

Added method:

public virtual void DidOutputAttributedStrings (AVPlayerItemLegibleOutput output, Foundation.NSAttributedString[] strings, CoreMedia.CMSampleBuffer[] nativeSamples, CoreMedia.CMTime itemTime);

Type Changed: AVFoundation.IAVPlayerItemMetadataCollectorPushDelegate

Modified methods:

-public abstract void DidCollectDateRange (AVPlayerItemMetadataCollector metadataCollector, AVDateRangeMetadataGroup[] metadataGroups, Foundation.NSIndexSet indexesOfNewGroups, Foundation.NSIndexSet indexesOfModifiedGroups)
+public virtual void DidCollectDateRange (AVPlayerItemMetadataCollector metadataCollector, AVDateRangeMetadataGroup[] metadataGroups, Foundation.NSIndexSet indexesOfNewGroups, Foundation.NSIndexSet indexesOfModifiedGroups)

Type Changed: AVFoundation.IAVPlayerItemMetadataOutputPushDelegate

Added method:

public virtual void DidOutputTimedMetadataGroups (AVPlayerItemMetadataOutput output, AVTimedMetadataGroup[] groups, AVPlayerItemTrack track);

Type Changed: AVFoundation.IAVPlayerItemOutputPullDelegate

Added methods:

public virtual void OutputMediaDataWillChange (AVPlayerItemOutput sender);
public virtual void OutputSequenceWasFlushed (AVPlayerItemOutput output);

Type Changed: AVFoundation.IAVPlayerItemOutputPushDelegate

Added method:

public virtual void OutputSequenceWasFlushed (AVPlayerItemOutput output);

Type Changed: AVFoundation.IAVPlayerPlaybackCoordinatorDelegate

Added methods:

public virtual string GetIdentifier (AVPlayerPlaybackCoordinator coordinator, AVPlayerItem playerItem);
public virtual Foundation.NSValue[] GetInterstitialTimeRanges (AVPlayerPlaybackCoordinator coordinator, AVPlayerItem playerItem);

Type Changed: AVFoundation.IAVQueuedSampleBufferRendering

Modified properties:

-public abstract bool HasSufficientMediaDataForReliablePlaybackStart { get; }
+public virtual bool HasSufficientMediaDataForReliablePlaybackStart { get; }
-public abstract bool ReadyForMoreMediaData { get; }
+public virtual bool ReadyForMoreMediaData { get; }
-public abstract CoreMedia.CMTimebase Timebase { get; }
+public virtual CoreMedia.CMTimebase Timebase { get; }

Modified methods:

-public abstract void Enqueue (CoreMedia.CMSampleBuffer sampleBuffer)
+public virtual void Enqueue (CoreMedia.CMSampleBuffer sampleBuffer)
-public abstract void Flush ()
+public virtual void Flush ()
-public abstract void RequestMediaData (CoreFoundation.DispatchQueue queue, System.Action handler)
+public virtual void RequestMediaData (CoreFoundation.DispatchQueue queue, System.Action handler)
-public abstract void StopRequestingMediaData ()
+public virtual void StopRequestingMediaData ()

Type Changed: AVFoundation.IAVSpeechSynthesizerDelegate

Added methods:

public virtual void DidCancelSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void DidContinueSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void DidFinishSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void DidPauseSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void DidStartSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void WillSpeakRangeOfSpeechString (AVSpeechSynthesizer synthesizer, Foundation.NSRange characterRange, AVSpeechUtterance utterance);

Type Changed: AVFoundation.IAVVideoCompositing

Added properties:

public virtual bool CanConformColorOfSourceFrames { get; }
public virtual bool SupportsHdrSourceFrames { get; }
public virtual bool SupportsWideColorSourceFrames { get; }

Modified methods:

-public abstract void RenderContextChanged (AVVideoCompositionRenderContext newRenderContext)
+public virtual void RenderContextChanged (AVVideoCompositionRenderContext newRenderContext)
-public abstract Foundation.NSDictionary RequiredPixelBufferAttributesForRenderContext ()
+public virtual Foundation.NSDictionary RequiredPixelBufferAttributesForRenderContext ()
-public abstract Foundation.NSDictionary SourcePixelBufferAttributes ()
+public virtual Foundation.NSDictionary SourcePixelBufferAttributes ()
-public abstract void StartVideoCompositionRequest (AVAsynchronousVideoCompositionRequest asyncVideoCompositionRequest)
+public virtual void StartVideoCompositionRequest (AVAsynchronousVideoCompositionRequest asyncVideoCompositionRequest)

Added methods:

public virtual void AnticipateRendering (AVVideoCompositionRenderHint renderHint);
public virtual void CancelAllPendingVideoCompositionRequests ();
public virtual void PrerollForRendering (AVVideoCompositionRenderHint renderHint);

Type Changed: AVFoundation.IAVVideoCompositionValidationHandling

Added methods:

public virtual bool ShouldContinueValidatingAfterFindingEmptyTimeRange (AVVideoComposition videoComposition, CoreMedia.CMTimeRange timeRange);
public virtual bool ShouldContinueValidatingAfterFindingInvalidTimeRangeInInstruction (AVVideoComposition videoComposition, AVVideoCompositionInstruction videoCompositionInstruction);
public virtual bool ShouldContinueValidatingAfterFindingInvalidTrackIDInInstruction (AVVideoComposition videoComposition, AVVideoCompositionInstruction videoCompositionInstruction, AVVideoCompositionLayerInstruction layerInstruction, AVAsset asset);
public virtual bool ShouldContinueValidatingAfterFindingInvalidValueForKey (AVVideoComposition videoComposition, string key);

New Type: AVFoundation.AVAudioSourceNodeRenderHandler3

public sealed delegate AVAudioSourceNodeRenderHandler3 : System.MulticastDelegate {
	// constructors
	public AVAudioSourceNodeRenderHandler3 (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (ref bool isSilence, ref AudioToolbox.AudioTimeStamp timestamp, uint frameCount, AudioToolbox.AudioBuffers outputData, System.AsyncCallback callback, object object);
	public virtual int EndInvoke (ref bool isSilence, ref AudioToolbox.AudioTimeStamp timestamp, System.IAsyncResult result);
	public virtual int Invoke (ref bool isSilence, ref AudioToolbox.AudioTimeStamp timestamp, uint frameCount, AudioToolbox.AudioBuffers outputData);
}

New Type: AVFoundation.AVAudioSourceNodeRenderHandlerRaw

public sealed delegate AVAudioSourceNodeRenderHandlerRaw : System.MulticastDelegate {
	// constructors
	public AVAudioSourceNodeRenderHandlerRaw (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (IntPtr isSilence, IntPtr timestamp, uint frameCount, IntPtr outputData, System.AsyncCallback callback, object object);
	public virtual int EndInvoke (System.IAsyncResult result);
	public virtual int Invoke (IntPtr isSilence, IntPtr timestamp, uint frameCount, IntPtr outputData);
}

New Type: AVFoundation.AVSampleCursor

public class AVSampleCursor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected AVSampleCursor (Foundation.NSObjectFlag t);
	protected AVSampleCursor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AVSampleCursorChunkInfo CurrentChunkInfo { get; }
	public virtual AVSampleCursorStorageRange CurrentChunkStorageRange { get; }
	public virtual Foundation.NSUrl CurrentChunkStorageUrl { get; }
	public virtual AVSampleCursorAudioDependencyInfo CurrentSampleAudioDependencyInfo { get; }
	public virtual Foundation.NSDictionary CurrentSampleDependencyAttachments { get; }
	public AVSampleCursorDependencyInfo CurrentSampleDependencyInfo2 { get; }
	public virtual CoreMedia.CMTime CurrentSampleDuration { get; }
	public virtual long CurrentSampleIndexInChunk { get; }
	public virtual AVSampleCursorStorageRange CurrentSampleStorageRange { get; }
	public virtual AVSampleCursorSyncInfo CurrentSampleSyncInfo { get; }
	public virtual CoreMedia.CMTime DecodeTimeStamp { get; }
	public virtual CoreMedia.CMTime PresentationTimeStamp { get; }
	public virtual IntPtr SamplesRequiredForDecoderRefresh { get; }
	// methods
	public virtual Foundation.NSComparisonResult ComparePositionInDecodeOrder (AVSampleCursor positionOfCursor);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual CoreMedia.CMFormatDescription CopyCurrentSampleFormatDescription ();
	public virtual bool SamplesWithEarlierDecodeTimeStampsMayHaveLaterPresentationTimeStampsThan (AVSampleCursor positionOfCursor);
	public virtual bool SamplesWithLaterDecodeTimeStampsMayHaveEarlierPresentationTimeStampsThan (AVSampleCursor positionOfCursor);
	public virtual CoreMedia.CMTime StepByDecodeTime (CoreMedia.CMTime deltaDecodeTime, out bool wasPinned);
	public virtual CoreMedia.CMTime StepByPresentationTime (CoreMedia.CMTime deltaPresentationTime, out bool wasPinned);
	public virtual long StepInDecodeOrder (long stepCount);
	public virtual long StepInPresentationOrder (long stepCount);
}

New Type: AVFoundation.AVSampleCursorAudioDependencyInfo

public struct AVSampleCursorAudioDependencyInfo {
	// fields
	public IntPtr PacketRefreshCount;
	// properties
	public bool IsIndependentlyDecodable { get; set; }
}

New Type: AVFoundation.AVSampleCursorChunkInfo

public struct AVSampleCursorChunkInfo {
	// fields
	public bool HasUniformFormatDescriptions;
	public bool HasUniformSampleDurations;
	public bool HasUniformSampleSizes;
	public long SampleCount;
}

New Type: AVFoundation.AVSampleCursorDependencyInfo

public struct AVSampleCursorDependencyInfo {
	// fields
	public bool DependsOnOthers;
	public bool HasDependentSamples;
	public bool HasRedundantCoding;
	public bool IndicatesWhetherItDependsOnOthers;
	public bool IndicatesWhetherItHasDependentSamples;
	public bool IndicatesWhetherItHasRedundantCoding;
}

New Type: AVFoundation.AVSampleCursorStorageRange

public struct AVSampleCursorStorageRange {
	// fields
	public long Length;
	public long Offset;
}

New Type: AVFoundation.AVSampleCursorSyncInfo

public struct AVSampleCursorSyncInfo {
	// fields
	public bool IsDroppable;
	public bool IsFullSync;
	public bool IsPartialSync;
}

Namespace AVKit

Type Changed: AVKit.IAVCustomRoutingControllerDelegate

Modified methods:

-public abstract void HandleEvent (AVRouting.AVCustomRoutingController controller, AVRouting.AVCustomRoutingEvent event, AVCustomRoutingControllerDelegateCompletionHandler completionHandler)
+public virtual void HandleEvent (AVRouting.AVCustomRoutingController controller, AVRouting.AVCustomRoutingEvent event, AVCustomRoutingControllerDelegateCompletionHandler completionHandler)

Added methods:

public virtual void DidSelectItem (AVRouting.AVCustomRoutingController controller, AVRouting.AVCustomRoutingActionItem customActionItem);
public virtual void EventDidTimeOut (AVRouting.AVCustomRoutingController controller, AVRouting.AVCustomRoutingEvent event);

Type Changed: AVKit.IAVPictureInPictureControllerDelegate

Added methods:

public virtual void DidStartPictureInPicture (AVPictureInPictureController pictureInPictureController);
public virtual void DidStopPictureInPicture (AVPictureInPictureController pictureInPictureController);
public virtual void FailedToStartPictureInPicture (AVPictureInPictureController pictureInPictureController, Foundation.NSError error);
public virtual void RestoreUserInterfaceForPictureInPicture (AVPictureInPictureController pictureInPictureController, System.Action<bool> completionHandler);
public virtual void WillStartPictureInPicture (AVPictureInPictureController pictureInPictureController);
public virtual void WillStopPictureInPicture (AVPictureInPictureController pictureInPictureController);

Type Changed: AVKit.IAVPictureInPictureSampleBufferPlaybackDelegate

Modified methods:

-public abstract void DidTransitionToRenderSize (AVPictureInPictureController pictureInPictureController, CoreMedia.CMVideoDimensions newRenderSize)
+public virtual void DidTransitionToRenderSize (AVPictureInPictureController pictureInPictureController, CoreMedia.CMVideoDimensions newRenderSize)
-public abstract CoreMedia.CMTimeRange GetTimeRange (AVPictureInPictureController pictureInPictureController)
+public virtual CoreMedia.CMTimeRange GetTimeRange (AVPictureInPictureController pictureInPictureController)
-public abstract bool IsPlaybackPaused (AVPictureInPictureController pictureInPictureController)
+public virtual bool IsPlaybackPaused (AVPictureInPictureController pictureInPictureController)
-public abstract void SetPlaying (AVPictureInPictureController pictureInPictureController, bool playing)
+public virtual void SetPlaying (AVPictureInPictureController pictureInPictureController, bool playing)
-public abstract void SkipByInterval (AVPictureInPictureController pictureInPictureController, CoreMedia.CMTime skipInterval, System.Action completionHandler)
+public virtual void SkipByInterval (AVPictureInPictureController pictureInPictureController, CoreMedia.CMTime skipInterval, System.Action completionHandler)

Added method:

public virtual bool ShouldProhibitBackgroundAudioPlayback (AVPictureInPictureController pictureInPictureController);

Type Changed: AVKit.IAVPlayerViewControllerDelegate

Added methods:

public virtual void DidPresentInterstitialTimeRange (AVPlayerViewController playerViewController, AVInterstitialTimeRange interstitial);
public virtual void DidStartPictureInPicture (AVPlayerViewController playerViewController);
public virtual void DidStopPictureInPicture (AVPlayerViewController playerViewController);
public virtual void FailedToStartPictureInPicture (AVPlayerViewController playerViewController, Foundation.NSError error);
public virtual void RestoreUserInterfaceForFullScreenExit (AVPlayerViewController playerViewController, System.Action<bool> completionHandler);
public virtual void RestoreUserInterfaceForPictureInPicture (AVPlayerViewController playerViewController, System.Action<bool> completionHandler);
public virtual bool ShouldAutomaticallyDismissAtPictureInPictureStart (AVPlayerViewController playerViewController);
public virtual void WillBeginFullScreenPresentation (AVPlayerViewController playerViewController, UIKit.IUIViewControllerTransitionCoordinator coordinator);
public virtual void WillEndFullScreenPresentation (AVPlayerViewController playerViewController, UIKit.IUIViewControllerTransitionCoordinator coordinator);
public virtual void WillPresentInterstitialTimeRange (AVPlayerViewController playerViewController, AVInterstitialTimeRange interstitial);
public virtual void WillStartPictureInPicture (AVPlayerViewController playerViewController);
public virtual void WillStopPictureInPicture (AVPlayerViewController playerViewController);

Type Changed: AVKit.IAVRoutePickerViewDelegate

Added methods:

public virtual void DidEndPresentingRoutes (AVRoutePickerView routePickerView);
public virtual void WillBeginPresentingRoutes (AVRoutePickerView routePickerView);

New Type: AVKit.AVCaptureEvent

public class AVCaptureEvent : Foundation.NSObject {
	// constructors
	protected AVCaptureEvent (Foundation.NSObjectFlag t);
	protected AVCaptureEvent (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AVCaptureEventPhase Phase { get; }
}

New Type: AVKit.AVCaptureEventInteraction

public class AVCaptureEventInteraction : Foundation.NSObject, ObjCRuntime.INativeObject, System.IDisposable, UIKit.IUIInteraction {
	// constructors
	protected AVCaptureEventInteraction (Foundation.NSObjectFlag t);
	protected AVCaptureEventInteraction (ObjCRuntime.NativeHandle handle);
	public AVCaptureEventInteraction (System.Action<AVCaptureEvent> handler);
	public AVCaptureEventInteraction (System.Action<AVCaptureEvent> primaryHandler, System.Action<AVCaptureEvent> secondaryHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual UIKit.UIView View { get; }
	// methods
	public virtual void DidMoveToView (UIKit.UIView view);
	protected override void Dispose (bool disposing);
	public virtual void WillMoveToView (UIKit.UIView view);
}

New Type: AVKit.AVCaptureEventPhase

[Serializable]
public enum AVCaptureEventPhase {
	Began = 0,
	Cancelled = 2,
	Ended = 1,
}

Namespace Accessibility

Type Changed: Accessibility.AXHearingUtilities

Added method:

public static byte AXSupportsBidirectionalAXMFiHearingDeviceStreaming ();

Type Changed: Accessibility.IAXBrailleMapRenderer

Added properties:

public virtual CoreGraphics.CGRect AccessibilityBrailleMapRenderRegion { get; set; }
public virtual System.Action<AXBrailleMap> AccessibilityBrailleMapRenderer { get; set; }

Type Changed: Accessibility.IAXChart

Modified properties:

-public abstract AXChartDescriptor AccessibilityChartDescriptor { get; set; }
+public virtual AXChartDescriptor AccessibilityChartDescriptor { get; set; }

Type Changed: Accessibility.IAXCustomContentProvider

Modified properties:

-public abstract AXCustomContent[] AccessibilityCustomContent { get; set; }
+public virtual AXCustomContent[] AccessibilityCustomContent { get; set; }

Added property:

public virtual System.Func<AXCustomContent[]> AccessibilityCustomContentHandler { get; set; }

Type Changed: Accessibility.IAXDataAxisDescriptor

Modified properties:

-public abstract Foundation.NSAttributedString AttributedTitle { get; set; }
+public virtual Foundation.NSAttributedString AttributedTitle { get; set; }
-public abstract string Title { get; set; }
+public virtual string Title { get; set; }

Namespace AddressBookUI

Type Changed: AddressBookUI.IABNewPersonViewControllerDelegate

Modified methods:

-public abstract void DidCompleteWithNewPerson (ABNewPersonViewController controller, AddressBook.ABPerson person)
+public virtual void DidCompleteWithNewPerson (ABNewPersonViewController controller, AddressBook.ABPerson person)

Type Changed: AddressBookUI.IABPeoplePickerNavigationControllerDelegate

Added methods:

public virtual void Cancelled (ABPeoplePickerNavigationController peoplePicker);
public virtual void DidSelectPerson (ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson);
public virtual void DidSelectPerson (ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson, int propertyId, int identifier);
public virtual bool ShouldContinue (ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson);
public virtual bool ShouldContinue (ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson, int propertyId, int identifier);

Type Changed: AddressBookUI.IABPersonViewControllerDelegate

Modified methods:

-public abstract bool ShouldPerformDefaultActionForPerson (ABPersonViewController personViewController, AddressBook.ABPerson person, int propertyId, int identifier)
+public virtual bool ShouldPerformDefaultActionForPerson (ABPersonViewController personViewController, AddressBook.ABPerson person, int propertyId, int identifier)

Type Changed: AddressBookUI.IABUnknownPersonViewControllerDelegate

Modified methods:

-public abstract void DidResolveToPerson (ABUnknownPersonViewController unknownPersonView, AddressBook.ABPerson person)
+public virtual void DidResolveToPerson (ABUnknownPersonViewController unknownPersonView, AddressBook.ABPerson person)

Added method:

public virtual bool ShouldPerformDefaultActionForPerson (ABUnknownPersonViewController personViewController, AddressBook.ABPerson person, int propertyId, int identifier);

Namespace AudioToolbox

Type Changed: AudioToolbox.MusicPlayer

Modified methods:

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

Added methods:

public MusicPlayerStatus GetTime (out double time);
public MusicPlayerStatus SetTime (double time);

Namespace AudioUnit

Type Changed: AudioUnit.AudioComponentDescription

Modified fields:

 ---[MarshalAs]---
 public AudioComponentManufacturerType ComponentManufacturer;
 ---[MarshalAs]---
 public AudioUnitSubType ComponentSubType;
 ---[MarshalAs]---
 public AudioComponentType ComponentType;

Type Changed: AudioUnit.IAUAudioUnitFactory

Modified methods:

-public abstract AUAudioUnit CreateAudioUnit (AudioComponentDescription desc, out Foundation.NSError error)
+public virtual AUAudioUnit CreateAudioUnit (AudioComponentDescription desc, out Foundation.NSError error)

Namespace AuthenticationServices

Type Changed: AuthenticationServices.ASAuthorizationAppleIdCredential

Added property:

public virtual ASUserAgeRange UserAgeRange { get; }

Type Changed: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialAssertion

Added property:

public virtual bool AppId { get; }

Type Changed: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest

Added property:

public virtual string AppId { get; set; }

Type Changed: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialRegistration

Added property:

public virtual ASAuthorizationSecurityKeyPublicKeyCredentialDescriptorTransport[] Transports { get; }

Added method:

protected override void Dispose (bool disposing);

Type Changed: AuthenticationServices.ASCredentialIdentityStore

Added methods:

public virtual void GetCredentialIdentities (ASCredentialServiceIdentifier serviceIdentifier, ASCredentialIdentityTypes credentialIdentityTypes, ASCredentialIdentityStoreGetCredentialIdentitiesHandler completion);
public virtual System.Threading.Tasks.Task<IASCredentialIdentity[]> GetCredentialIdentitiesAsync (ASCredentialServiceIdentifier serviceIdentifier, ASCredentialIdentityTypes credentialIdentityTypes);

Type Changed: AuthenticationServices.ASWebAuthenticationSession

Added constructor:

public ASWebAuthenticationSession (Foundation.NSUrl url, ASWebAuthenticationSessionCallback callback, ASWebAuthenticationSessionCompletionHandler completionHandler);

Added property:

public virtual Foundation.NSDictionary AdditionalHeaderFields { get; set; }

Type Changed: AuthenticationServices.IASAccountAuthenticationModificationControllerDelegate

Added methods:

public virtual void DidFailRequest (ASAccountAuthenticationModificationController controller, ASAccountAuthenticationModificationRequest request, Foundation.NSError error);
public virtual void DidSuccessfullyCompleteRequest (ASAccountAuthenticationModificationController controller, ASAccountAuthenticationModificationRequest request, Foundation.NSDictionary userInfo);

Type Changed: AuthenticationServices.IASAccountAuthenticationModificationControllerPresentationContextProviding

Modified methods:

-public abstract UIKit.UIWindow GetPresentationAnchor (ASAccountAuthenticationModificationController controller)
+public virtual UIKit.UIWindow GetPresentationAnchor (ASAccountAuthenticationModificationController controller)

Type Changed: AuthenticationServices.IASAuthorizationControllerDelegate

Added methods:

public virtual void DidComplete (ASAuthorizationController controller, ASAuthorization authorization);
public virtual void DidComplete (ASAuthorizationController controller, Foundation.NSError error);

Type Changed: AuthenticationServices.IASAuthorizationControllerPresentationContextProviding

Modified methods:

-public abstract UIKit.UIWindow GetPresentationAnchor (ASAuthorizationController controller)
+public virtual UIKit.UIWindow GetPresentationAnchor (ASAuthorizationController controller)

Type Changed: AuthenticationServices.IASAuthorizationProviderExtensionAuthorizationRequestHandler

Modified methods:

-public abstract void BeginAuthorization (ASAuthorizationProviderExtensionAuthorizationRequest request)
+public virtual void BeginAuthorization (ASAuthorizationProviderExtensionAuthorizationRequest request)

Added method:

public virtual void CancelAuthorization (ASAuthorizationProviderExtensionAuthorizationRequest request);

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialAssertion

Modified properties:

-public abstract Foundation.NSData RawAuthenticatorData { get; }
+public virtual Foundation.NSData RawAuthenticatorData { get; }
-public abstract Foundation.NSData Signature { get; }
+public virtual Foundation.NSData Signature { get; }
-public abstract Foundation.NSData UserId { get; }
+public virtual Foundation.NSData UserId { get; }

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialAssertionRequest

Modified properties:

-public abstract IASAuthorizationPublicKeyCredentialDescriptor[] AllowedCredentials { get; set; }
+public virtual IASAuthorizationPublicKeyCredentialDescriptor[] AllowedCredentials { get; set; }
-public abstract Foundation.NSData Challenge { get; set; }
+public virtual Foundation.NSData Challenge { get; set; }
-public abstract string RelyingPartyIdentifier { get; set; }
+public virtual string RelyingPartyIdentifier { get; set; }
-public abstract Foundation.NSString UserVerificationPreference { get; set; }
+public virtual Foundation.NSString UserVerificationPreference { get; set; }

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialDescriptor

Modified properties:

-public abstract Foundation.NSData CredentialId { get; set; }
+public virtual Foundation.NSData CredentialId { get; set; }

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialRegistration

Modified properties:

-public abstract Foundation.NSData RawAttestationObject { get; }
+public virtual Foundation.NSData RawAttestationObject { get; }

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialRegistrationRequest

Modified properties:

-public abstract Foundation.NSString AttestationPreference { get; set; }
+public virtual Foundation.NSString AttestationPreference { get; set; }
-public abstract Foundation.NSData Challenge { get; set; }
+public virtual Foundation.NSData Challenge { get; set; }
-public abstract string DisplayName { get; set; }
+public virtual string DisplayName { get; set; }
-public abstract string Name { get; set; }
+public virtual string Name { get; set; }
-public abstract string RelyingPartyIdentifier { get; }
+public virtual string RelyingPartyIdentifier { get; }
-public abstract Foundation.NSData UserId { get; set; }
+public virtual Foundation.NSData UserId { get; set; }
-public abstract Foundation.NSString UserVerificationPreference { get; set; }
+public virtual Foundation.NSString UserVerificationPreference { get; set; }

Type Changed: AuthenticationServices.IASCredentialIdentity

Modified properties:

-public abstract IntPtr Rank { get; set; }
+public virtual IntPtr Rank { get; set; }
-public abstract string RecordIdentifier { get; }
+public virtual string RecordIdentifier { get; }
-public abstract ASCredentialServiceIdentifier ServiceIdentifier { get; }
+public virtual ASCredentialServiceIdentifier ServiceIdentifier { get; }
-public abstract string User { get; }
+public virtual string User { get; }

Type Changed: AuthenticationServices.IASCredentialRequest

Modified properties:

-public abstract IASCredentialIdentity CredentialIdentity { get; }
+public virtual IASCredentialIdentity CredentialIdentity { get; }
-public abstract ASCredentialRequestType Type { get; }
+public virtual ASCredentialRequestType Type { get; }

Type Changed: AuthenticationServices.IASPublicKeyCredential

Modified properties:

-public abstract Foundation.NSData CredentialId { get; }
+public virtual Foundation.NSData CredentialId { get; }
-public abstract Foundation.NSData RawClientDataJson { get; }
+public virtual Foundation.NSData RawClientDataJson { get; }

Type Changed: AuthenticationServices.IASWebAuthenticationPresentationContextProviding

Modified methods:

-public abstract UIKit.UIWindow GetPresentationAnchor (ASWebAuthenticationSession session)
+public virtual UIKit.UIWindow GetPresentationAnchor (ASWebAuthenticationSession session)

New Type: AuthenticationServices.ASAuthorizationWebBrowserPlatformPublicKeyCredential

public class ASAuthorizationWebBrowserPlatformPublicKeyCredential : Foundation.NSObject {
	// constructors
	protected ASAuthorizationWebBrowserPlatformPublicKeyCredential (Foundation.NSObjectFlag t);
	protected ASAuthorizationWebBrowserPlatformPublicKeyCredential (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData CredentialId { get; }
	public virtual string CustomTitle { get; }
	public virtual string Name { get; }
	public virtual string ProviderName { get; }
	public virtual string RelyingParty { get; }
	public virtual Foundation.NSData UserHandle { get; }
}

New Type: AuthenticationServices.ASAuthorizationWebBrowserPublicKeyCredentialManager

public class ASAuthorizationWebBrowserPublicKeyCredentialManager : Foundation.NSObject {
	// constructors
	public ASAuthorizationWebBrowserPublicKeyCredentialManager ();
	protected ASAuthorizationWebBrowserPublicKeyCredentialManager (Foundation.NSObjectFlag t);
	protected ASAuthorizationWebBrowserPublicKeyCredentialManager (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState AuthorizationStateForPlatformCredentials { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual void GetPlatformCredentials (string relyingParty, System.Action<ASAuthorizationWebBrowserPlatformPublicKeyCredential[]> completionHandler);
	public virtual System.Threading.Tasks.Task<ASAuthorizationWebBrowserPlatformPublicKeyCredential[]> GetPlatformCredentialsAsync (string relyingParty);
	public virtual void RequestAuthorization (System.Action<ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState> completionHandler);
	public virtual System.Threading.Tasks.Task<ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState> RequestAuthorizationAsync ();
}

New Type: AuthenticationServices.ASCredentialIdentityStoreGetCredentialIdentitiesHandler

public sealed delegate ASCredentialIdentityStoreGetCredentialIdentitiesHandler : System.MulticastDelegate {
	// constructors
	public ASCredentialIdentityStoreGetCredentialIdentitiesHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (IASCredentialIdentity[] credentialIdentities, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (IASCredentialIdentity[] credentialIdentities);
}

New Type: AuthenticationServices.ASCredentialIdentityTypes

[Serializable]
[Flags]
public enum ASCredentialIdentityTypes {
	All = 0,
	Passkey = 2,
	Password = 1,
}

New Type: AuthenticationServices.ASPublicKeyCredentialClientData

public class ASPublicKeyCredentialClientData : Foundation.NSObject {
	// constructors
	protected ASPublicKeyCredentialClientData (Foundation.NSObjectFlag t);
	protected ASPublicKeyCredentialClientData (ObjCRuntime.NativeHandle handle);
	public ASPublicKeyCredentialClientData (Foundation.NSData challenge, string origin);
	// properties
	public virtual Foundation.NSData Challenge { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual ASPublicKeyCredentialClientDataCrossOriginValue CrossOrigin { get; set; }
	public virtual string Origin { get; set; }
	public virtual string TopOrigin { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: AuthenticationServices.ASUserAgeRange

[Serializable]
public enum ASUserAgeRange {
	Child = 1,
	NotChild = 2,
	Unknown = 0,
}

New Type: AuthenticationServices.ASWebAuthenticationSessionCallback

public class ASWebAuthenticationSessionCallback : Foundation.NSObject {
	// constructors
	protected ASWebAuthenticationSessionCallback (Foundation.NSObjectFlag t);
	protected ASWebAuthenticationSessionCallback (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public static ASWebAuthenticationSessionCallback Create (string customScheme);
	public static ASWebAuthenticationSessionCallback Create (string httpsHost, string path);
	public virtual bool MatchesUrl (Foundation.NSUrl url);
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserPlatformPublicKeyCredentialAssertionRequest

public interface IASAuthorizationWebBrowserPlatformPublicKeyCredentialAssertionRequest : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ASPublicKeyCredentialClientData ClientData { get; }
	public virtual bool ShouldShowHybridTransport { get; set; }
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider

public interface IASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual ASAuthorizationPlatformPublicKeyCredentialAssertionRequest CreateCredentialAssertionRequest (ASPublicKeyCredentialClientData clientData);
	public virtual ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest CreateCredentialRegistrationRequest (ASPublicKeyCredentialClientData clientData, string name, Foundation.NSData userId);
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserPlatformPublicKeyCredentialRegistrationRequest

public interface IASAuthorizationWebBrowserPlatformPublicKeyCredentialRegistrationRequest : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ASPublicKeyCredentialClientData ClientData { get; }
	public virtual ASAuthorizationPlatformPublicKeyCredentialDescriptor[] ExcludedCredentials { get; set; }
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialAssertionRequest

public interface IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialAssertionRequest : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ASPublicKeyCredentialClientData ClientData { get; }
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialProvider

public interface IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialProvider : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest CreateCredentialAssertionRequest (ASPublicKeyCredentialClientData clientData);
	public virtual ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest CreateCredentialRegistrationRequest (ASPublicKeyCredentialClientData clientData, string displayName, string name, Foundation.NSData userId);
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialRegistrationRequest

public interface IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialRegistrationRequest : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ASPublicKeyCredentialClientData ClientData { get; }
}

Namespace AutomaticAssessmentConfiguration

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentApplication

Added constructor:

public AEAssessmentApplication (string bundleIdentifier);

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentConfiguration

Added properties:

public virtual Foundation.NSDictionary<AEAssessmentApplication,AutomaticAssessmentConfiguration.AEAssessmentParticipantConfiguration> ConfigurationsByApplication { get; }
public virtual AEAssessmentParticipantConfiguration MainParticipantConfiguration { get; }

Added methods:

public virtual void Remove (AEAssessmentApplication application);
public virtual void SetConfiguration (AEAssessmentParticipantConfiguration configuration, AEAssessmentApplication application);

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentErrorCode

Added values:

ConfigurationUpdatesNotSupported = 4,
MultipleParticipantsNotSupported = 3,

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentSession

Added properties:

public static bool SupportsConfigurationUpdates { get; }
public static bool SupportsMultipleParticipants { get; }

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentSessionDelegate

Added methods:

public virtual void DidUpdate (AEAssessmentSession session);
public virtual void FailedToUpdate (AEAssessmentSession session, AEAssessmentConfiguration configuration, Foundation.NSError error);

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentSessionDelegate_Extensions

Added methods:

public static void DidUpdate (this IAEAssessmentSessionDelegate This, AEAssessmentSession session);
public static void FailedToUpdate (this IAEAssessmentSessionDelegate This, AEAssessmentSession session, AEAssessmentConfiguration configuration, Foundation.NSError error);

Type Changed: AutomaticAssessmentConfiguration.IAEAssessmentSessionDelegate

Added methods:

public virtual void DidBegin (AEAssessmentSession session);
public virtual void DidEnd (AEAssessmentSession session);
public virtual void DidUpdate (AEAssessmentSession session);
public virtual void FailedToBegin (AEAssessmentSession session, Foundation.NSError error);
public virtual void FailedToUpdate (AEAssessmentSession session, AEAssessmentConfiguration configuration, Foundation.NSError error);
public virtual void WasInterrupted (AEAssessmentSession session, Foundation.NSError error);

Namespace BackgroundAssets

Type Changed: BackgroundAssets.IBADownloadManagerDelegate

Added methods:

public virtual void DidBegin (BADownload download);
public virtual void DidPause (BADownload download);
public virtual void DidReceiveChallenge (BADownload download, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<Foundation.NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);
public virtual void DidWriteBytes (BADownload download, long bytesWritten, long totalBytesWritten, long totalExpectedBytes);
public virtual void Failed (BADownload download, Foundation.NSError error);
public virtual void Finished (BADownload download, Foundation.NSUrl fileUrl);

Type Changed: BackgroundAssets.IBADownloaderExtension

Added methods:

public virtual void DidReceiveChallenge (BADownload download, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<Foundation.NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);
public virtual void Failed (BADownload download, Foundation.NSError error);
public virtual void Finished (BADownload download, Foundation.NSUrl fileUrl);
public virtual Foundation.NSSet<BADownload> GetDownloads (BAContentRequest contentRequest, Foundation.NSUrl manifestUrl, BAAppExtensionInfo extensionInfo);
public virtual void WillTerminate ();

Namespace CallKit

Type Changed: CallKit.ICXCallDirectoryExtensionContextDelegate

Modified methods:

-public abstract void RequestFailed (CXCallDirectoryExtensionContext extensionContext, Foundation.NSError error)
+public virtual void RequestFailed (CXCallDirectoryExtensionContext extensionContext, Foundation.NSError error)

Type Changed: CallKit.ICXCallObserverDelegate

Modified methods:

-public abstract void CallChanged (CXCallObserver callObserver, CXCall call)
+public virtual void CallChanged (CXCallObserver callObserver, CXCall call)

Type Changed: CallKit.ICXProviderDelegate

Modified methods:

-public abstract void DidReset (CXProvider provider)
+public virtual void DidReset (CXProvider provider)

Added methods:

public virtual void DidActivateAudioSession (CXProvider provider, AVFoundation.AVAudioSession audioSession);
public virtual void DidBegin (CXProvider provider);
public virtual void DidDeactivateAudioSession (CXProvider provider, AVFoundation.AVAudioSession audioSession);
public virtual bool ExecuteTransaction (CXProvider provider, CXTransaction transaction);
public virtual void PerformAnswerCallAction (CXProvider provider, CXAnswerCallAction action);
public virtual void PerformEndCallAction (CXProvider provider, CXEndCallAction action);
public virtual void PerformPlayDtmfCallAction (CXProvider provider, CXPlayDtmfCallAction action);
public virtual void PerformSetGroupCallAction (CXProvider provider, CXSetGroupCallAction action);
public virtual void PerformSetHeldCallAction (CXProvider provider, CXSetHeldCallAction action);
public virtual void PerformSetMutedCallAction (CXProvider provider, CXSetMutedCallAction action);
public virtual void PerformStartCallAction (CXProvider provider, CXStartCallAction action);
public virtual void TimedOutPerformingAction (CXProvider provider, CXAction action);

Namespace CarPlay

Type Changed: CarPlay.CPListImageRowItem

Added constructor:

public CPListImageRowItem (string text, UIKit.UIImage[] images, string[] imageTitles);

Added property:

public virtual string[] ImageTitles { get; set; }

Type Changed: CarPlay.CPManeuver

Added properties:

public virtual string HighwayExitLabel { get; set; }
public virtual Foundation.NSSet<Foundation.NSMeasurement<Foundation.NSUnitAngle>> JunctionElementAngles { get; set; }
public virtual Foundation.NSMeasurement<Foundation.NSUnitAngle> JunctionExitAngle { get; set; }
public virtual CPJunctionType JunctionType { get; set; }
public virtual CPLaneGuidance LinkedLaneGuidance { get; set; }
public virtual CPManeuverType ManeuverType { get; set; }
public virtual string[] RoadFollowingManeuverVariants { get; set; }
public virtual CPTrafficSide TrafficSide { get; set; }

Added method:

protected override void Dispose (bool disposing);

Type Changed: CarPlay.CPMapTemplateDelegate

Added method:

public virtual bool ShouldProvideNavigationMetadata (CPMapTemplate mapTemplate);

Type Changed: CarPlay.CPMapTemplateDelegate_Extensions

Added method:

public static bool ShouldProvideNavigationMetadata (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate);

Type Changed: CarPlay.CPNavigationSession

Added properties:

public virtual CPLaneGuidance CurrentLaneGuidance { get; set; }
public virtual string[] CurrentRoadNameVariants { get; set; }
public virtual CPManeuverState ManeuverState { get; set; }

Added methods:

public virtual void AddLaneGuidances (CPLaneGuidance[] laneGuidances);
public virtual void AddManeuvers (CPManeuver[] maneuvers);
public virtual void ResumeTrip (CPRouteInformation routeInformation);

Type Changed: CarPlay.CPTravelEstimates

Added constructor:

public CPTravelEstimates (Foundation.NSMeasurement<Foundation.NSUnitLength> distanceRemaining, Foundation.NSMeasurement<Foundation.NSUnitLength> distanceRemainingToDisplay, double time);

Added property:

public virtual Foundation.NSMeasurement<Foundation.NSUnitLength> DistanceRemainingToDisplay { get; }

Type Changed: CarPlay.CPTrip

Added property:

public virtual string[] DestinationNameVariants { get; set; }

Type Changed: CarPlay.ICPApplicationDelegate

Modified methods:

-public abstract void DidConnectCarInterfaceController (UIKit.UIApplication application, CPInterfaceController interfaceController, CPWindow window)
+public virtual void DidConnectCarInterfaceController (UIKit.UIApplication application, CPInterfaceController interfaceController, CPWindow window)
-public abstract void DidDisconnectCarInterfaceController (UIKit.UIApplication application, CPInterfaceController interfaceController, CPWindow window)
+public virtual void DidDisconnectCarInterfaceController (UIKit.UIApplication application, CPInterfaceController interfaceController, CPWindow window)

Added methods:

public virtual void DidSelectManeuver (UIKit.UIApplication application, CPManeuver maneuver);
public virtual void DidSelectNavigationAlert (UIKit.UIApplication application, CPNavigationAlert navigationAlert);

Type Changed: CarPlay.ICPBarButtonProviding

Modified properties:

-public abstract CPBarButton BackButton { get; set; }
+public virtual CPBarButton BackButton { get; set; }
-public abstract CPBarButton[] LeadingNavigationBarButtons { get; set; }
+public virtual CPBarButton[] LeadingNavigationBarButtons { get; set; }
-public abstract CPBarButton[] TrailingNavigationBarButtons { get; set; }
+public virtual CPBarButton[] TrailingNavigationBarButtons { get; set; }

Type Changed: CarPlay.ICPInstrumentClusterControllerDelegate

Modified methods:

-public abstract void DidConnectWindow (UIKit.UIWindow instrumentClusterWindow)
+public virtual void DidConnectWindow (UIKit.UIWindow instrumentClusterWindow)
-public abstract void DidDisconnectWindow (UIKit.UIWindow instrumentClusterWindow)
+public virtual void DidDisconnectWindow (UIKit.UIWindow instrumentClusterWindow)

Added methods:

public virtual void DidChangeCompassSetting (CPInstrumentClusterController instrumentClusterController, CPInstrumentClusterSetting compassSetting);
public virtual void DidChangeSpeedLimitSetting (CPInstrumentClusterController instrumentClusterController, CPInstrumentClusterSetting speedLimitSetting);
public virtual void DidZoomIn (CPInstrumentClusterController instrumentClusterController);
public virtual void DidZoomOut (CPInstrumentClusterController instrumentClusterController);

Type Changed: CarPlay.ICPInterfaceControllerDelegate

Added methods:

public virtual void TemplateDidAppear (CPTemplate aTemplate, bool animated);
public virtual void TemplateDidDisappear (CPTemplate aTemplate, bool animated);
public virtual void TemplateWillAppear (CPTemplate aTemplate, bool animated);
public virtual void TemplateWillDisappear (CPTemplate aTemplate, bool animated);

Type Changed: CarPlay.ICPListTemplateDelegate

Modified methods:

-public abstract void DidSelectListItem (CPListTemplate listTemplate, CPListItem item, System.Action completionHandler)
+public virtual void DidSelectListItem (CPListTemplate listTemplate, CPListItem item, System.Action completionHandler)

Type Changed: CarPlay.ICPListTemplateItem

Modified properties:

-public abstract bool Enabled { get; set; }
+public virtual bool Enabled { get; set; }
-public abstract string Text { get; }
+public virtual string Text { get; }
-public abstract Foundation.NSObject UserInfo { get; set; }
+public virtual Foundation.NSObject UserInfo { get; set; }

Type Changed: CarPlay.ICPMapTemplateDelegate

Added methods:

public virtual void DidBeginPanGesture (CPMapTemplate mapTemplate);
public virtual void DidCancelNavigation (CPMapTemplate mapTemplate);
public virtual void DidDismissNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert, CPNavigationAlertDismissalContext dismissalContext);
public virtual void DidDismissPanningInterface (CPMapTemplate mapTemplate);
public virtual void DidEndPanGesture (CPMapTemplate mapTemplate, CoreGraphics.CGPoint velocity);
public virtual void DidShowNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
public virtual void DidShowPanningInterface (CPMapTemplate mapTemplate);
public virtual void DidUpdatePanGesture (CPMapTemplate mapTemplate, CoreGraphics.CGPoint translation, CoreGraphics.CGPoint velocity);
public virtual CPManeuverDisplayStyle GetDisplayStyle (CPMapTemplate mapTemplate, CPManeuver maneuver);
public virtual void Pan (CPMapTemplate mapTemplate, CPPanDirection direction);
public virtual void PanBegan (CPMapTemplate mapTemplate, CPPanDirection direction);
public virtual void PanEnded (CPMapTemplate mapTemplate, CPPanDirection direction);
public virtual void SelectedPreview (CPMapTemplate mapTemplate, CPTrip trip, CPRouteChoice routeChoice);
public virtual bool ShouldProvideNavigationMetadata (CPMapTemplate mapTemplate);
public virtual bool ShouldShowNotificationForManeuver (CPMapTemplate mapTemplate, CPManeuver maneuver);
public virtual bool ShouldShowNotificationForNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
public virtual bool ShouldUpdateNotificationForManeuver (CPMapTemplate mapTemplate, CPManeuver maneuver, CPTravelEstimates travelEstimates);
public virtual void StartedTrip (CPMapTemplate mapTemplate, CPTrip trip, CPRouteChoice routeChoice);
public virtual void WillDismissNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert, CPNavigationAlertDismissalContext dismissalContext);
public virtual void WillDismissPanningInterface (CPMapTemplate mapTemplate);
public virtual void WillShowNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);

Type Changed: CarPlay.ICPNowPlayingTemplateObserver

Added methods:

public virtual void AlbumArtistButtonTapped (CPNowPlayingTemplate nowPlayingTemplate);
public virtual void UpNextButtonTapped (CPNowPlayingTemplate nowPlayingTemplate);

Type Changed: CarPlay.ICPPointOfInterestTemplateDelegate

Modified methods:

-public abstract void DidChangeMapRegion (CPPointOfInterestTemplate pointOfInterestTemplate, MapKit.MKCoordinateRegion region)
+public virtual void DidChangeMapRegion (CPPointOfInterestTemplate pointOfInterestTemplate, MapKit.MKCoordinateRegion region)

Added method:

public virtual void DidSelectPointOfInterest (CPPointOfInterestTemplate pointOfInterestTemplate, CPPointOfInterest pointOfInterest);

Type Changed: CarPlay.ICPSearchTemplateDelegate

Modified methods:

-public abstract void SelectedResult (CPSearchTemplate searchTemplate, CPListItem item, System.Action completionHandler)
+public virtual void SelectedResult (CPSearchTemplate searchTemplate, CPListItem item, System.Action completionHandler)
-public abstract void UpdatedSearchText (CPSearchTemplate searchTemplate, string searchText, CPSearchTemplateDelegateUpdateHandler completionHandler)
+public virtual void UpdatedSearchText (CPSearchTemplate searchTemplate, string searchText, CPSearchTemplateDelegateUpdateHandler completionHandler)

Added method:

public virtual void SearchButtonPressed (CPSearchTemplate searchTemplate);

Type Changed: CarPlay.ICPSelectableListItem

Modified properties:

-public abstract CPSelectableListItemHandler Handler { get; set; }
+public virtual CPSelectableListItemHandler Handler { get; set; }

Type Changed: CarPlay.ICPSessionConfigurationDelegate

Added methods:

public virtual void ContentStyleChanged (CPSessionConfiguration sessionConfiguration, CPContentStyle contentStyle);
public virtual void LimitedUserInterfacesChanged (CPSessionConfiguration sessionConfiguration, CPLimitableUserInterface limitedUserInterfaces);

Type Changed: CarPlay.ICPTabBarTemplateDelegate

Modified methods:

-public abstract void DidSelectTemplate (CPTabBarTemplate tabBarTemplate, CPTemplate selectedTemplate)
+public virtual void DidSelectTemplate (CPTabBarTemplate tabBarTemplate, CPTemplate selectedTemplate)

Type Changed: CarPlay.ICPTemplateApplicationDashboardSceneDelegate

Added methods:

public virtual void DidConnectDashboardController (CPTemplateApplicationDashboardScene templateApplicationDashboardScene, CPDashboardController dashboardController, UIKit.UIWindow window);
public virtual void DidDisconnectDashboardController (CPTemplateApplicationDashboardScene templateApplicationDashboardScene, CPDashboardController dashboardController, UIKit.UIWindow window);

Type Changed: CarPlay.ICPTemplateApplicationInstrumentClusterSceneDelegate

Added methods:

public virtual void ContentStyleDidChange (UIKit.UIUserInterfaceStyle contentStyle);
public virtual void DidConnectInstrumentClusterController (CPTemplateApplicationInstrumentClusterScene templateApplicationInstrumentClusterScene, CPInstrumentClusterController instrumentClusterController);
public virtual void DidDisconnectInstrumentClusterController (CPTemplateApplicationInstrumentClusterScene templateApplicationInstrumentClusterScene, CPInstrumentClusterController instrumentClusterController);

Type Changed: CarPlay.ICPTemplateApplicationSceneDelegate

Added methods:

public virtual void ContentStyleDidChange (UIKit.UIUserInterfaceStyle contentStyle);
public virtual void DidConnect (CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController);
public virtual void DidConnect (CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController, CPWindow window);
public virtual void DidDisconnect (CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController);
public virtual void DidDisconnect (CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController, CPWindow window);
public virtual void DidSelect (CPTemplateApplicationScene templateApplicationScene, CPManeuver maneuver);
public virtual void DidSelect (CPTemplateApplicationScene templateApplicationScene, CPNavigationAlert navigationAlert);

New Type: CarPlay.CPJunctionType

[Serializable]
public enum CPJunctionType {
	Intersection = 0,
	Roundabout = 1,
}

New Type: CarPlay.CPLane

public class CPLane : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CPLane ();
	public CPLane (Foundation.NSCoder coder);
	protected CPLane (Foundation.NSObjectFlag t);
	protected CPLane (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitAngle> PrimaryAngle { get; set; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitAngle>[] SecondaryAngles { get; set; }
	public virtual CPLaneStatus Status { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPLaneGuidance

public class CPLaneGuidance : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CPLaneGuidance ();
	public CPLaneGuidance (Foundation.NSCoder coder);
	protected CPLaneGuidance (Foundation.NSObjectFlag t);
	protected CPLaneGuidance (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string[] InstructionVariants { get; set; }
	public virtual CPLane[] Lanes { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPLaneStatus

[Serializable]
public enum CPLaneStatus {
	Good = 1,
	NotGood = 0,
	Preferred = 2,
}

New Type: CarPlay.CPManeuverState

[Serializable]
public enum CPManeuverState {
	Continue = 0,
	Execute = 3,
	Initial = 1,
	Prepare = 2,
}

New Type: CarPlay.CPManeuverType

[Serializable]
public enum CPManeuverType {
	ArriveAtDestination = 12,
	ArriveAtDestinationLeft = 24,
	ArriveAtDestinationRight = 25,
	ArriveEndOfDirections = 27,
	ArriveEndOfNavigation = 10,
	ChangeFerry = 17,
	ChangeHighway = 51,
	ChangeHighwayLeft = 52,
	ChangeHighwayRight = 53,
	EnterFerry = 15,
	EnterRoundabout = 6,
	ExitFerry = 16,
	ExitRoundabout = 7,
	FollowRoad = 5,
	HighwayOffRampLeft = 22,
	HighwayOffRampRight = 23,
	KeepLeft = 13,
	KeepRight = 14,
	LeftTurn = 1,
	LeftTurnAtEnd = 20,
	NoTurn = 0,
	OffRamp = 8,
	OnRamp = 9,
	RightTurn = 2,
	RightTurnAtEnd = 21,
	RoundaboutExit1 = 28,
	RoundaboutExit10 = 37,
	RoundaboutExit11 = 38,
	RoundaboutExit12 = 39,
	RoundaboutExit13 = 40,
	RoundaboutExit14 = 41,
	RoundaboutExit15 = 42,
	RoundaboutExit16 = 43,
	RoundaboutExit17 = 44,
	RoundaboutExit18 = 45,
	RoundaboutExit19 = 46,
	RoundaboutExit2 = 29,
	RoundaboutExit3 = 30,
	RoundaboutExit4 = 31,
	RoundaboutExit5 = 32,
	RoundaboutExit6 = 33,
	RoundaboutExit7 = 34,
	RoundaboutExit8 = 35,
	RoundaboutExit9 = 36,
	SharpLeftTurn = 47,
	SharpRightTurn = 48,
	SlightLeftTurn = 49,
	SlightRightTurn = 50,
	StartRoute = 11,
	StartRouteWithUTurn = 18,
	StraightAhead = 3,
	UTurn = 4,
	UTurnAtRoundabout = 19,
	UTurnWhenPossible = 26,
}

New Type: CarPlay.CPRouteInformation

public class CPRouteInformation : Foundation.NSObject {
	// constructors
	protected CPRouteInformation (Foundation.NSObjectFlag t);
	protected CPRouteInformation (ObjCRuntime.NativeHandle handle);
	public CPRouteInformation (CPManeuver[] maneuvers, CPLaneGuidance[] laneGuidances, CPManeuver[] currentManeuvers, CPLaneGuidance currentLaneGuidance, CPTravelEstimates tripTravelEstimates, CPTravelEstimates maneuverTravelEstimates);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CPLaneGuidance CurrentLaneGuidance { get; }
	public virtual CPManeuver[] CurrentManeuvers { get; }
	public virtual CPLaneGuidance[] LaneGuidances { get; }
	public virtual CPTravelEstimates ManeuverTravelEstimates { get; }
	public virtual CPManeuver[] Maneuvers { get; }
	public virtual CPTravelEstimates TripTravelEstimates { get; }
}

New Type: CarPlay.CPTrafficSide

[Serializable]
public enum CPTrafficSide {
	Left = 1,
	Right = 0,
}

Namespace ClassKit

Type Changed: ClassKit.ICLSContextProvider

Modified methods:

-public abstract void UpdateDescendants (CLSContext context, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completion)
+public virtual void UpdateDescendants (CLSContext context, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completion)

Type Changed: ClassKit.ICLSDataStoreDelegate

Modified methods:

-public abstract CLSContext CreateContext (string identifier, CLSContext parentContext, string[] parentIdentifierPath)
+public virtual CLSContext CreateContext (string identifier, CLSContext parentContext, string[] parentIdentifierPath)

Namespace CloudKit

Type Changed: CloudKit.ICKSyncEngineDelegate

Modified methods:

-public abstract void SyncEngine (CKSyncEngine syncEngine, CKSyncEngineEvent event)
+public virtual void SyncEngine (CKSyncEngine syncEngine, CKSyncEngineEvent event)
-public abstract CKSyncEngineRecordZoneChangeBatch SyncEngine (CKSyncEngine syncEngine, CKSyncEngineSendChangesContext context)
+public virtual CKSyncEngineRecordZoneChangeBatch SyncEngine (CKSyncEngine syncEngine, CKSyncEngineSendChangesContext context)

Added method:

public virtual CKSyncEngineFetchChangesOptions SyncEngine (CKSyncEngine syncEngine, CKSyncEngineFetchChangesContext context);

Namespace Compression

Type Changed: Compression.CompressionAlgorithm

Added values:

Brotli = 2818,
LZBitmap = 1794,

Namespace Contacts

Type Changed: Contacts.ICNChangeHistoryEventVisitor

Modified methods:

-public abstract void AddContact (CNChangeHistoryAddContactEvent event)
+public virtual void AddContact (CNChangeHistoryAddContactEvent event)
-public abstract void DeleteContact (CNChangeHistoryDeleteContactEvent event)
+public virtual void DeleteContact (CNChangeHistoryDeleteContactEvent event)
-public abstract void DropEverything (CNChangeHistoryDropEverythingEvent event)
+public virtual void DropEverything (CNChangeHistoryDropEverythingEvent event)
-public abstract void UpdateContact (CNChangeHistoryUpdateContactEvent event)
+public virtual void UpdateContact (CNChangeHistoryUpdateContactEvent event)

Added methods:

public virtual void AddGroup (CNChangeHistoryAddGroupEvent event);
public virtual void AddMemberToGroup (CNChangeHistoryAddMemberToGroupEvent event);
public virtual void AddSubgroupToGroup (CNChangeHistoryAddSubgroupToGroupEvent event);
public virtual void DeleteGroup (CNChangeHistoryDeleteGroupEvent event);
public virtual void RemoveMemberFromGroup (CNChangeHistoryRemoveMemberFromGroupEvent event);
public virtual void RemoveSubgroupFromGroup (CNChangeHistoryRemoveSubgroupFromGroupEvent event);
public virtual void UpdateGroup (CNChangeHistoryUpdateGroupEvent event);

Namespace ContactsUI

Type Changed: ContactsUI.ICNContactPickerDelegate

Added methods:

public virtual void ContactPickerDidCancel (CNContactPickerViewController picker);
public virtual void DidSelectContact (CNContactPickerViewController picker, Contacts.CNContact contact);
public virtual void DidSelectContactProperties (CNContactPickerViewController picker, Contacts.CNContactProperty[] contactProperties);
public virtual void DidSelectContactProperty (CNContactPickerViewController picker, Contacts.CNContactProperty contactProperty);
public virtual void DidSelectContacts (CNContactPickerViewController picker, Contacts.CNContact[] contacts);

Type Changed: ContactsUI.ICNContactViewControllerDelegate

Added methods:

public virtual void DidComplete (CNContactViewController viewController, Contacts.CNContact contact);
public virtual bool ShouldPerformDefaultAction (CNContactViewController viewController, Contacts.CNContactProperty property);

Namespace CoreAnimation

Type Changed: CoreAnimation.ICAAction

Modified methods:

-public abstract void RunAction (string eventKey, Foundation.NSObject obj, Foundation.NSDictionary arguments)
+public virtual void RunAction (string eventKey, Foundation.NSObject obj, Foundation.NSDictionary arguments)

Type Changed: CoreAnimation.ICAAnimationDelegate

Added methods:

public virtual void AnimationStarted (CAAnimation anim);
public virtual void AnimationStopped (CAAnimation anim, bool finished);

Type Changed: CoreAnimation.ICALayerDelegate

Added methods:

public virtual Foundation.NSObject ActionForLayer (CALayer layer, string eventKey);
public virtual void DisplayLayer (CALayer layer);
public virtual void DrawLayer (CALayer layer, CoreGraphics.CGContext context);
public virtual void LayoutSublayersOfLayer (CALayer layer);
public virtual void WillDrawLayer (CALayer layer);

Type Changed: CoreAnimation.ICAMediaTiming

Modified properties:

-public abstract bool AutoReverses { get; set; }
+public virtual bool AutoReverses { get; set; }
-public abstract double BeginTime { get; set; }
+public virtual double BeginTime { get; set; }
-public abstract double Duration { get; set; }
+public virtual double Duration { get; set; }
-public abstract string FillMode { get; set; }
+public virtual string FillMode { get; set; }
-public abstract float RepeatCount { get; set; }
+public virtual float RepeatCount { get; set; }
-public abstract double RepeatDuration { get; set; }
+public virtual double RepeatDuration { get; set; }
-public abstract float Speed { get; set; }
+public virtual float Speed { get; set; }
-public abstract double TimeOffset { get; set; }
+public virtual double TimeOffset { get; set; }

Type Changed: CoreAnimation.ICAMetalDrawable

Modified properties:

-public abstract CAMetalLayer Layer { get; }
+public virtual CAMetalLayer Layer { get; }
-public abstract Metal.IMTLTexture Texture { get; }
+public virtual Metal.IMTLTexture Texture { get; }

Namespace CoreBluetooth

Type Changed: CoreBluetooth.ICBCentralManagerDelegate

Modified methods:

-public abstract void UpdatedState (CBCentralManager central)
+public virtual void UpdatedState (CBCentralManager central)

Added methods:

public virtual void ConnectedPeripheral (CBCentralManager central, CBPeripheral peripheral);
public virtual void ConnectionEventDidOccur (CBCentralManager central, CBConnectionEvent connectionEvent, CBPeripheral peripheral);
public virtual void DidDisconnectPeripheral (CBCentralManager central, CBPeripheral peripheral, double timestamp, bool isReconnecting, Foundation.NSError error);
public virtual void DidUpdateAncsAuthorization (CBCentralManager central, CBPeripheral peripheral);
public virtual void DisconnectedPeripheral (CBCentralManager central, CBPeripheral peripheral, Foundation.NSError error);
public virtual void DiscoveredPeripheral (CBCentralManager central, CBPeripheral peripheral, Foundation.NSDictionary advertisementData, Foundation.NSNumber RSSI);
public virtual void FailedToConnectPeripheral (CBCentralManager central, CBPeripheral peripheral, Foundation.NSError error);
public virtual void WillRestoreState (CBCentralManager central, Foundation.NSDictionary dict);

Type Changed: CoreBluetooth.ICBPeripheralDelegate

Added methods:

public virtual void DidOpenL2CapChannel (CBPeripheral peripheral, CBL2CapChannel channel, Foundation.NSError error);
public virtual void DiscoveredCharacteristics (CBPeripheral peripheral, CBService service, Foundation.NSError error);
public virtual void DiscoveredDescriptor (CBPeripheral peripheral, CBCharacteristic characteristic, Foundation.NSError error);
public virtual void DiscoveredIncludedService (CBPeripheral peripheral, CBService service, Foundation.NSError error);
public virtual void DiscoveredService (CBPeripheral peripheral, Foundation.NSError error);
public virtual void IsReadyToSendWriteWithoutResponse (CBPeripheral peripheral);
public virtual void ModifiedServices (CBPeripheral peripheral, CBService[] services);
public virtual void RssiRead (CBPeripheral peripheral, Foundation.NSNumber rssi, Foundation.NSError error);
public virtual void RssiUpdated (CBPeripheral peripheral, Foundation.NSError error);
public virtual void UpdatedCharacterteristicValue (CBPeripheral peripheral, CBCharacteristic characteristic, Foundation.NSError error);
public virtual void UpdatedName (CBPeripheral peripheral);
public virtual void UpdatedNotificationState (CBPeripheral peripheral, CBCharacteristic characteristic, Foundation.NSError error);
public virtual void UpdatedValue (CBPeripheral peripheral, CBDescriptor descriptor, Foundation.NSError error);
public virtual void WroteCharacteristicValue (CBPeripheral peripheral, CBCharacteristic characteristic, Foundation.NSError error);
public virtual void WroteDescriptorValue (CBPeripheral peripheral, CBDescriptor descriptor, Foundation.NSError error);

Type Changed: CoreBluetooth.ICBPeripheralManagerDelegate

Modified methods:

-public abstract void StateUpdated (CBPeripheralManager peripheral)
+public virtual void StateUpdated (CBPeripheralManager peripheral)

Added methods:

public virtual void AdvertisingStarted (CBPeripheralManager peripheral, Foundation.NSError error);
public virtual void CharacteristicSubscribed (CBPeripheralManager peripheral, CBCentral central, CBCharacteristic characteristic);
public virtual void CharacteristicUnsubscribed (CBPeripheralManager peripheral, CBCentral central, CBCharacteristic characteristic);
public virtual void DidOpenL2CapChannel (CBPeripheralManager peripheral, CBL2CapChannel channel, Foundation.NSError error);
public virtual void DidPublishL2CapChannel (CBPeripheralManager peripheral, ushort psm, Foundation.NSError error);
public virtual void DidUnpublishL2CapChannel (CBPeripheralManager peripheral, ushort psm, Foundation.NSError error);
public virtual void ReadRequestReceived (CBPeripheralManager peripheral, CBATTRequest request);
public virtual void ReadyToUpdateSubscribers (CBPeripheralManager peripheral);
public virtual void ServiceAdded (CBPeripheralManager peripheral, CBService service, Foundation.NSError error);
public virtual void WillRestoreState (CBPeripheralManager peripheral, Foundation.NSDictionary dict);
public virtual void WriteRequestsReceived (CBPeripheralManager peripheral, CBATTRequest[] requests);

Namespace CoreData

Type Changed: CoreData.INSFetchedResultsControllerDelegate

Added methods:

public virtual void DidChangeContent (NSFetchedResultsController controller);
public virtual void DidChangeObject (NSFetchedResultsController controller, Foundation.NSObject anObject, Foundation.NSIndexPath indexPath, NSFetchedResultsChangeType type, Foundation.NSIndexPath newIndexPath);
public virtual void DidChangeSection (NSFetchedResultsController controller, INSFetchedResultsSectionInfo sectionInfo, UIntPtr sectionIndex, NSFetchedResultsChangeType type);
public virtual string SectionFor (NSFetchedResultsController controller, string sectionName);
public virtual void WillChangeContent (NSFetchedResultsController controller);

Type Changed: CoreData.INSFetchedResultsSectionInfo

Modified properties:

-public abstract IntPtr Count { get; }
+public virtual IntPtr Count { get; }
-public abstract string IndexTitle { get; }
+public virtual string IndexTitle { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }
-public abstract Foundation.NSObject[] Objects { get; }
+public virtual Foundation.NSObject[] Objects { get; }

Namespace CoreHaptics

Type Changed: CoreHaptics.ICHHapticAdvancedPatternPlayer

Modified properties:

-public abstract System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% CompletionHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% CompletionHandler { get; set; }
-public abstract bool IsMuted { get; set; }
+public virtual bool IsMuted { get; set; }
-public abstract bool LoopEnabled { get; set; }
+public virtual bool LoopEnabled { get; set; }
-public abstract double LoopEnd { get; set; }
+public virtual double LoopEnd { get; set; }
-public abstract float PlaybackRate { get; set; }
+public virtual float PlaybackRate { get; set; }

Modified methods:

-public abstract bool Pause (double time, out Foundation.NSError outError)
+public virtual bool Pause (double time, out Foundation.NSError outError)
-public abstract bool Resume (double time, out Foundation.NSError outError)
+public virtual bool Resume (double time, out Foundation.NSError outError)
-public abstract bool Seek (double offsetTime, out Foundation.NSError outError)
+public virtual bool Seek (double offsetTime, out Foundation.NSError outError)

Type Changed: CoreHaptics.ICHHapticDeviceCapability

Modified properties:

-public abstract bool SupportsAudio { get; }
+public virtual bool SupportsAudio { get; }
-public abstract bool SupportsHaptics { get; }
+public virtual bool SupportsHaptics { get; }

Modified methods:

-public abstract ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, out Foundation.NSError outError)
+public virtual ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, out Foundation.NSError outError)
-public abstract ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, string type, out Foundation.NSError outError)
+public virtual ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, string type, out Foundation.NSError outError)

Type Changed: CoreHaptics.ICHHapticParameterAttributes

Modified properties:

-public abstract float DefaultValue { get; }
+public virtual float DefaultValue { get; }
-public abstract float MaxValue { get; }
+public virtual float MaxValue { get; }
-public abstract float MinValue { get; }
+public virtual float MinValue { get; }

Type Changed: CoreHaptics.ICHHapticPatternPlayer

Modified properties:

-public abstract bool IsMuted { get; set; }
+public virtual bool IsMuted { get; set; }

Modified methods:

-public abstract bool Cancel (out Foundation.NSError outError)
+public virtual bool Cancel (out Foundation.NSError outError)
-public abstract bool Schedule (CHHapticParameterCurve parameterCurve, double time, out Foundation.NSError outError)
+public virtual bool Schedule (CHHapticParameterCurve parameterCurve, double time, out Foundation.NSError outError)
-public abstract bool Send (CHHapticDynamicParameter[] parameters, double time, out Foundation.NSError outError)
+public virtual bool Send (CHHapticDynamicParameter[] parameters, double time, out Foundation.NSError outError)
-public abstract bool Start (double time, out Foundation.NSError outError)
+public virtual bool Start (double time, out Foundation.NSError outError)
-public abstract bool Stop (double time, out Foundation.NSError outError)
+public virtual bool Stop (double time, out Foundation.NSError outError)

Namespace CoreImage

Type Changed: CoreImage.ICIAccordionFoldTransitionProtocol

Modified properties:

-public abstract float BottomHeight { get; set; }
+public virtual float BottomHeight { get; set; }
-public abstract float FoldCount { get; set; }
+public virtual float FoldCount { get; set; }
-public abstract float FoldShadowAmount { get; set; }
+public virtual float FoldShadowAmount { get; set; }

Type Changed: CoreImage.ICIAffineClampProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGAffineTransform Transform { get; set; }
+public virtual CoreGraphics.CGAffineTransform Transform { get; set; }

Type Changed: CoreImage.ICIAffineTileProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGAffineTransform Transform { get; set; }
+public virtual CoreGraphics.CGAffineTransform Transform { get; set; }

Type Changed: CoreImage.ICIAreaHistogramProtocol

Modified properties:

-public abstract IntPtr InputCount { get; set; }
+public virtual IntPtr InputCount { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIAreaLogarithmicHistogramProtocol

Modified properties:

-public abstract IntPtr Count { get; set; }
+public virtual IntPtr Count { get; set; }
-public abstract float MaximumStop { get; set; }
+public virtual float MaximumStop { get; set; }
-public abstract float MinimumStop { get; set; }
+public virtual float MinimumStop { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIAreaReductionFilterProtocol

Modified properties:

-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIAttributedTextImageGeneratorProtocol

Modified properties:

-public abstract float ScaleFactor { get; set; }
+public virtual float ScaleFactor { get; set; }
-public abstract Foundation.NSAttributedString Text { get; set; }
+public virtual Foundation.NSAttributedString Text { get; set; }

Added property:

public virtual float Padding { get; set; }

Type Changed: CoreImage.ICIAztecCodeGeneratorProtocol

Modified properties:

-public abstract float CorrectionLevel { get; set; }
+public virtual float CorrectionLevel { get; set; }
-public abstract float InputCompactStyle { get; set; }
+public virtual float InputCompactStyle { get; set; }
-public abstract float InputLayers { get; set; }
+public virtual float InputLayers { get; set; }
-public abstract Foundation.NSData Message { get; set; }
+public virtual Foundation.NSData Message { get; set; }

Type Changed: CoreImage.ICIBarcodeGeneratorProtocol

Modified properties:

-public abstract CIBarcodeDescriptor BarcodeDescriptor { get; set; }
+public virtual CIBarcodeDescriptor BarcodeDescriptor { get; set; }

Type Changed: CoreImage.ICIBarsSwipeTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract float BarOffset { get; set; }
+public virtual float BarOffset { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIBicubicScaleTransformProtocol

Modified properties:

-public abstract float AspectRatio { get; set; }
+public virtual float AspectRatio { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float ParameterB { get; set; }
+public virtual float ParameterB { get; set; }
-public abstract float ParameterC { get; set; }
+public virtual float ParameterC { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIBlendWithMaskProtocol

Modified properties:

-public abstract CIImage BackgroundImage { get; set; }
+public virtual CIImage BackgroundImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage MaskImage { get; set; }
+public virtual CIImage MaskImage { get; set; }

Type Changed: CoreImage.ICIBloomProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIBlurredRectangleGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Sigma { get; set; }
+public virtual float Sigma { get; set; }

Type Changed: CoreImage.ICIBokehBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float RingAmount { get; set; }
+public virtual float RingAmount { get; set; }
-public abstract float RingSize { get; set; }
+public virtual float RingSize { get; set; }
-public abstract float Softness { get; set; }
+public virtual float Softness { get; set; }

Type Changed: CoreImage.ICIBoxBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIBumpDistortionLinearProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIBumpDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICICannyEdgeDetectorProtocol

Modified properties:

-public abstract float GaussianSigma { get; set; }
+public virtual float GaussianSigma { get; set; }
-public abstract IntPtr HysteresisPasses { get; set; }
+public virtual IntPtr HysteresisPasses { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract bool Perceptual { get; set; }
+public virtual bool Perceptual { get; set; }
-public abstract float ThresholdHigh { get; set; }
+public virtual float ThresholdHigh { get; set; }
-public abstract float ThresholdLow { get; set; }
+public virtual float ThresholdLow { get; set; }

Type Changed: CoreImage.ICICheckerboardGeneratorProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICICircleSplashDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICICircularScreenProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICICircularWrapProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICICmykHalftoneProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract float GrayComponentReplacement { get; set; }
+public virtual float GrayComponentReplacement { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float UnderColorRemoval { get; set; }
+public virtual float UnderColorRemoval { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICICode128BarcodeGeneratorProtocol

Modified properties:

-public abstract float BarcodeHeight { get; set; }
+public virtual float BarcodeHeight { get; set; }
-public abstract Foundation.NSData Message { get; set; }
+public virtual Foundation.NSData Message { get; set; }
-public abstract float QuietSpace { get; set; }
+public virtual float QuietSpace { get; set; }

Type Changed: CoreImage.ICIColorAbsoluteDifferenceProtocol

Modified properties:

-public abstract CIImage Image2 { get; set; }
+public virtual CIImage Image2 { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorClampProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector MaxComponents { get; set; }
+public virtual CIVector MaxComponents { get; set; }
-public abstract CIVector MinComponents { get; set; }
+public virtual CIVector MinComponents { get; set; }

Type Changed: CoreImage.ICIColorControlsProtocol

Modified properties:

-public abstract float Brightness { get; set; }
+public virtual float Brightness { get; set; }
-public abstract float Contrast { get; set; }
+public virtual float Contrast { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Saturation { get; set; }
+public virtual float Saturation { get; set; }

Type Changed: CoreImage.ICIColorCrossPolynomialProtocol

Modified properties:

-public abstract CIVector BlueCoefficients { get; set; }
+public virtual CIVector BlueCoefficients { get; set; }
-public abstract CIVector GreenCoefficients { get; set; }
+public virtual CIVector GreenCoefficients { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector RedCoefficients { get; set; }
+public virtual CIVector RedCoefficients { get; set; }

Type Changed: CoreImage.ICIColorCubeProtocol

Modified properties:

-public abstract Foundation.NSData CubeData { get; set; }
+public virtual Foundation.NSData CubeData { get; set; }
-public abstract float CubeDimension { get; set; }
+public virtual float CubeDimension { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Added property:

public virtual bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIColorCubeWithColorSpaceProtocol

Modified properties:

-public abstract CoreGraphics.CGColorSpace ColorSpace { get; set; }
+public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
-public abstract Foundation.NSData CubeData { get; set; }
+public virtual Foundation.NSData CubeData { get; set; }
-public abstract float CubeDimension { get; set; }
+public virtual float CubeDimension { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Added property:

public virtual bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIColorCubesMixedWithMaskProtocol

Modified properties:

-public abstract CoreGraphics.CGColorSpace ColorSpace { get; set; }
+public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
-public abstract Foundation.NSData Cube0Data { get; set; }
+public virtual Foundation.NSData Cube0Data { get; set; }
-public abstract Foundation.NSData Cube1Data { get; set; }
+public virtual Foundation.NSData Cube1Data { get; set; }
-public abstract float CubeDimension { get; set; }
+public virtual float CubeDimension { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage MaskImage { get; set; }
+public virtual CIImage MaskImage { get; set; }

Added property:

public virtual bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIColorCurvesProtocol

Modified properties:

-public abstract CoreGraphics.CGColorSpace ColorSpace { get; set; }
+public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
-public abstract Foundation.NSData CurvesData { get; set; }
+public virtual Foundation.NSData CurvesData { get; set; }
-public abstract CIVector CurvesDomain { get; set; }
+public virtual CIVector CurvesDomain { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorInvertProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorMapProtocol

Modified properties:

-public abstract CIImage GradientImage { get; set; }
+public virtual CIImage GradientImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorMatrixProtocol

Modified properties:

-public abstract CIVector AVector { get; set; }
+public virtual CIVector AVector { get; set; }
-public abstract CIVector BVector { get; set; }
+public virtual CIVector BVector { get; set; }
-public abstract CIVector BiasVector { get; set; }
+public virtual CIVector BiasVector { get; set; }
-public abstract CIVector GVector { get; set; }
+public virtual CIVector GVector { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector RVector { get; set; }
+public virtual CIVector RVector { get; set; }

Type Changed: CoreImage.ICIColorMonochromeProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }

Type Changed: CoreImage.ICIColorPolynomialProtocol

Modified properties:

-public abstract CIVector AlphaCoefficients { get; set; }
+public virtual CIVector AlphaCoefficients { get; set; }
-public abstract CIVector BlueCoefficients { get; set; }
+public virtual CIVector BlueCoefficients { get; set; }
-public abstract CIVector GreenCoefficients { get; set; }
+public virtual CIVector GreenCoefficients { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector RedCoefficients { get; set; }
+public virtual CIVector RedCoefficients { get; set; }

Type Changed: CoreImage.ICIColorPosterizeProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Levels { get; set; }
+public virtual float Levels { get; set; }

Type Changed: CoreImage.ICIColorThresholdOtsuProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorThresholdProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Threshold { get; set; }
+public virtual float Threshold { get; set; }

Type Changed: CoreImage.ICIComicEffectProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICICompositeOperationProtocol

Modified properties:

-public abstract CIImage BackgroundImage { get; set; }
+public virtual CIImage BackgroundImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIConvertLabProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract bool Normalize { get; set; }
+public virtual bool Normalize { get; set; }

Type Changed: CoreImage.ICIConvolutionProtocol

Modified properties:

-public abstract float Bias { get; set; }
+public virtual float Bias { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector Weights { get; set; }
+public virtual CIVector Weights { get; set; }

Type Changed: CoreImage.ICICopyMachineTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect Extent { get; set; }
+public virtual CoreGraphics.CGRect Extent { get; set; }
-public abstract float Opacity { get; set; }
+public virtual float Opacity { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICICoreMLModelProtocol

Modified properties:

-public abstract float HeadIndex { get; set; }
+public virtual float HeadIndex { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreML.MLModel Model { get; set; }
+public virtual CoreML.MLModel Model { get; set; }
-public abstract bool SoftmaxNormalization { get; set; }
+public virtual bool SoftmaxNormalization { get; set; }

Type Changed: CoreImage.ICICrystallizeProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIDepthOfFieldProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Saturation { get; set; }
+public virtual float Saturation { get; set; }
-public abstract float UnsharpMaskIntensity { get; set; }
+public virtual float UnsharpMaskIntensity { get; set; }
-public abstract float UnsharpMaskRadius { get; set; }
+public virtual float UnsharpMaskRadius { get; set; }

Type Changed: CoreImage.ICIDepthToDisparityProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIDiscBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIDisintegrateWithMaskTransitionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputShadowOffset { get; set; }
+public virtual CoreGraphics.CGPoint InputShadowOffset { get; set; }
-public abstract CIImage MaskImage { get; set; }
+public virtual CIImage MaskImage { get; set; }
-public abstract float ShadowDensity { get; set; }
+public virtual float ShadowDensity { get; set; }
-public abstract float ShadowRadius { get; set; }
+public virtual float ShadowRadius { get; set; }

Type Changed: CoreImage.ICIDisparityToDepthProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIDisplacementDistortionProtocol

Modified properties:

-public abstract CIImage DisplacementImage { get; set; }
+public virtual CIImage DisplacementImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIDitherProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }

Type Changed: CoreImage.ICIDocumentEnhancerProtocol

Modified properties:

-public abstract float Amount { get; set; }
+public virtual float Amount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIDotScreenProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIDrosteProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputInsetPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputInsetPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputInsetPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputInsetPoint1 { get; set; }
-public abstract float Periodicity { get; set; }
+public virtual float Periodicity { get; set; }
-public abstract float Rotation { get; set; }
+public virtual float Rotation { get; set; }
-public abstract float Strands { get; set; }
+public virtual float Strands { get; set; }
-public abstract float Zoom { get; set; }
+public virtual float Zoom { get; set; }

Type Changed: CoreImage.ICIEdgePreserveUpsampleProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float LumaSigma { get; set; }
+public virtual float LumaSigma { get; set; }
-public abstract CIImage SmallImage { get; set; }
+public virtual CIImage SmallImage { get; set; }
-public abstract float SpatialSigma { get; set; }
+public virtual float SpatialSigma { get; set; }

Type Changed: CoreImage.ICIEdgeWorkProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIEdgesProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }

Type Changed: CoreImage.ICIEightfoldReflectedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIExposureAdjustProtocol

Modified properties:

-public abstract float EV { get; set; }
+public virtual float EV { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIFalseColorProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIFilterConstructor

Modified methods:

-public abstract CIFilter FilterWithName (string name)
+public virtual CIFilter FilterWithName (string name)

Type Changed: CoreImage.ICIFilterProtocol

Modified properties:

-public abstract CIImage OutputImage { get; }
+public virtual CIImage OutputImage { get; }

Added method:

public static Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetCustomAttributes<T> ();

Type Changed: CoreImage.ICIFlashTransitionProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract float FadeThreshold { get; set; }
+public virtual float FadeThreshold { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float MaxStriationRadius { get; set; }
+public virtual float MaxStriationRadius { get; set; }
-public abstract float StriationContrast { get; set; }
+public virtual float StriationContrast { get; set; }
-public abstract float StriationStrength { get; set; }
+public virtual float StriationStrength { get; set; }

Type Changed: CoreImage.ICIFourCoordinateGeometryFilterProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputBottomLeft { get; set; }
+public virtual CoreGraphics.CGPoint InputBottomLeft { get; set; }
-public abstract CoreGraphics.CGPoint InputBottomRight { get; set; }
+public virtual CoreGraphics.CGPoint InputBottomRight { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputTopLeft { get; set; }
+public virtual CoreGraphics.CGPoint InputTopLeft { get; set; }
-public abstract CoreGraphics.CGPoint InputTopRight { get; set; }
+public virtual CoreGraphics.CGPoint InputTopRight { get; set; }

Type Changed: CoreImage.ICIFourfoldReflectedTileProtocol

Modified properties:

-public abstract float AcuteAngle { get; set; }
+public virtual float AcuteAngle { get; set; }
-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIFourfoldRotatedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIFourfoldTranslatedTileProtocol

Modified properties:

-public abstract float AcuteAngle { get; set; }
+public virtual float AcuteAngle { get; set; }
-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIGaborGradientsProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIGammaAdjustProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Power { get; set; }
+public virtual float Power { get; set; }

Type Changed: CoreImage.ICIGaussianBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIGaussianGradientProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIGlassDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }
-public abstract CIImage Texture { get; set; }
+public virtual CIImage Texture { get; set; }

Type Changed: CoreImage.ICIGlassLozengeProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Refraction { get; set; }
+public virtual float Refraction { get; set; }

Type Changed: CoreImage.ICIGlideReflectedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIGloomProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIHatchedScreenProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIHeightFieldFromMaskProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIHexagonalPixellateProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIHighlightShadowAdjustProtocol

Modified properties:

-public abstract float HighlightAmount { get; set; }
+public virtual float HighlightAmount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float ShadowAmount { get; set; }
+public virtual float ShadowAmount { get; set; }

Type Changed: CoreImage.ICIHistogramDisplayProtocol

Modified properties:

-public abstract float Height { get; set; }
+public virtual float Height { get; set; }
-public abstract float HighLimit { get; set; }
+public virtual float HighLimit { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float LowLimit { get; set; }
+public virtual float LowLimit { get; set; }

Type Changed: CoreImage.ICIHoleDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIHueAdjustProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIHueSaturationValueGradientProtocol

Modified properties:

-public abstract CoreGraphics.CGColorSpace ColorSpace { get; set; }
+public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
-public abstract float Dither { get; set; }
+public virtual float Dither { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Softness { get; set; }
+public virtual float Softness { get; set; }
-public abstract float Value { get; set; }
+public virtual float Value { get; set; }

Type Changed: CoreImage.ICIImageProcessorInput

Modified properties:

-public abstract IntPtr BaseAddress { get; }
+public virtual IntPtr BaseAddress { get; }
-public abstract UIntPtr BytesPerRow { get; }
+public virtual UIntPtr BytesPerRow { get; }
-public abstract CIFormat Format { get; }
+public virtual CIFormat Format { get; }
-public abstract Metal.IMTLTexture MetalTexture { get; }
+public virtual Metal.IMTLTexture MetalTexture { get; }
-public abstract CoreVideo.CVPixelBuffer PixelBuffer { get; }
+public virtual CoreVideo.CVPixelBuffer PixelBuffer { get; }
-public abstract CoreGraphics.CGRect Region { get; }
+public virtual CoreGraphics.CGRect Region { get; }
-public abstract IOSurface.IOSurface Surface { get; }
+public virtual IOSurface.IOSurface Surface { get; }

Added properties:

public virtual ulong Digest { get; }
public virtual UIntPtr RoiTileCount { get; }
public virtual UIntPtr RoiTileIndex { get; }

Type Changed: CoreImage.ICIImageProcessorOutput

Modified properties:

-public abstract IntPtr BaseAddress { get; }
+public virtual IntPtr BaseAddress { get; }
-public abstract UIntPtr BytesPerRow { get; }
+public virtual UIntPtr BytesPerRow { get; }
-public abstract CIFormat Format { get; }
+public virtual CIFormat Format { get; }
-public abstract Metal.IMTLCommandBuffer MetalCommandBuffer { get; }
+public virtual Metal.IMTLCommandBuffer MetalCommandBuffer { get; }
-public abstract Metal.IMTLTexture MetalTexture { get; }
+public virtual Metal.IMTLTexture MetalTexture { get; }
-public abstract CoreVideo.CVPixelBuffer PixelBuffer { get; }
+public virtual CoreVideo.CVPixelBuffer PixelBuffer { get; }
-public abstract CoreGraphics.CGRect Region { get; }
+public virtual CoreGraphics.CGRect Region { get; }
-public abstract IOSurface.IOSurface Surface { get; }
+public virtual IOSurface.IOSurface Surface { get; }

Added property:

public virtual ulong Digest { get; }

Type Changed: CoreImage.ICIImageProvider

Modified methods:

-public abstract void ProvideImageData (IntPtr data, UIntPtr rowbytes, UIntPtr x, UIntPtr y, UIntPtr width, UIntPtr height, Foundation.NSObject info)
+public virtual void ProvideImageData (IntPtr data, UIntPtr rowbytes, UIntPtr x, UIntPtr y, UIntPtr width, UIntPtr height, Foundation.NSObject info)

Type Changed: CoreImage.ICIKMeansProtocol

Modified properties:

-public abstract IntPtr InputCount { get; set; }
+public virtual IntPtr InputCount { get; set; }
-public abstract float InputPasses { get; set; }
+public virtual float InputPasses { get; set; }
-public abstract CIImage Means { get; set; }
+public virtual CIImage Means { get; set; }
-public abstract bool Perceptual { get; set; }
+public virtual bool Perceptual { get; set; }

Type Changed: CoreImage.ICIKaleidoscopeProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract IntPtr InputCount { get; set; }
+public virtual IntPtr InputCount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIKeystoneCorrectionCombinedProtocol

Modified properties:

-public abstract float FocalLength { get; set; }
+public virtual float FocalLength { get; set; }

Type Changed: CoreImage.ICIKeystoneCorrectionHorizontalProtocol

Modified properties:

-public abstract float FocalLength { get; set; }
+public virtual float FocalLength { get; set; }

Type Changed: CoreImage.ICIKeystoneCorrectionVerticalProtocol

Modified properties:

-public abstract float FocalLength { get; set; }
+public virtual float FocalLength { get; set; }

Type Changed: CoreImage.ICILabDeltaEProtocol

Modified properties:

-public abstract CIImage Image2 { get; set; }
+public virtual CIImage Image2 { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICILanczosScaleTransformProtocol

Modified properties:

-public abstract float AspectRatio { get; set; }
+public virtual float AspectRatio { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICILenticularHaloGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract float HaloOverlap { get; set; }
+public virtual float HaloOverlap { get; set; }
-public abstract float HaloRadius { get; set; }
+public virtual float HaloRadius { get; set; }
-public abstract float HaloWidth { get; set; }
+public virtual float HaloWidth { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float StriationContrast { get; set; }
+public virtual float StriationContrast { get; set; }
-public abstract float StriationStrength { get; set; }
+public virtual float StriationStrength { get; set; }
-public abstract float Time { get; set; }
+public virtual float Time { get; set; }

Type Changed: CoreImage.ICILightTunnelProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Rotation { get; set; }
+public virtual float Rotation { get; set; }

Type Changed: CoreImage.ICILineOverlayProtocol

Modified properties:

-public abstract float Contrast { get; set; }
+public virtual float Contrast { get; set; }
-public abstract float EdgeIntensity { get; set; }
+public virtual float EdgeIntensity { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float NRNoiseLevel { get; set; }
+public virtual float NRNoiseLevel { get; set; }
-public abstract float NRSharpness { get; set; }
+public virtual float NRSharpness { get; set; }
-public abstract float Threshold { get; set; }
+public virtual float Threshold { get; set; }

Type Changed: CoreImage.ICILineScreenProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICILinearGradientProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }

Type Changed: CoreImage.ICILinearToSrgbToneCurveProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMaskToAlphaProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMaskedVariableBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage Mask { get; set; }
+public virtual CIImage Mask { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMaximumComponentProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMedianProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMeshGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CIVector[] Mesh { get; set; }
+public virtual CIVector[] Mesh { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIMinimumComponentProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMixProtocol

Modified properties:

-public abstract float Amount { get; set; }
+public virtual float Amount { get; set; }
-public abstract CIImage BackgroundImage { get; set; }
+public virtual CIImage BackgroundImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIModTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract float Compression { get; set; }
+public virtual float Compression { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMorphologyGradientProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMorphologyMaximumProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMorphologyMinimumProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMorphologyRectangleMaximumProtocol

Modified properties:

-public abstract float InputHeight { get; set; }
+public virtual float InputHeight { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float InputWidth { get; set; }
+public virtual float InputWidth { get; set; }

Type Changed: CoreImage.ICIMorphologyRectangleMinimumProtocol

Modified properties:

-public abstract float InputHeight { get; set; }
+public virtual float InputHeight { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float InputWidth { get; set; }
+public virtual float InputWidth { get; set; }

Type Changed: CoreImage.ICIMotionBlurProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICINinePartStretchedProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
-public abstract CoreGraphics.CGPoint InputGrowAmount { get; set; }
+public virtual CoreGraphics.CGPoint InputGrowAmount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICINinePartTiledProtocol

Modified properties:

-public abstract bool FlipYTiles { get; set; }
+public virtual bool FlipYTiles { get; set; }
-public abstract CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
-public abstract CoreGraphics.CGPoint InputGrowAmount { get; set; }
+public virtual CoreGraphics.CGPoint InputGrowAmount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICINoiseReductionProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float NoiseLevel { get; set; }
+public virtual float NoiseLevel { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }

Type Changed: CoreImage.ICIOpTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIPageCurlTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage BacksideImage { get; set; }
+public virtual CIImage BacksideImage { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract CIImage ShadingImage { get; set; }
+public virtual CIImage ShadingImage { get; set; }

Type Changed: CoreImage.ICIPageCurlWithShadowTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage BacksideImage { get; set; }
+public virtual CIImage BacksideImage { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract CoreGraphics.CGRect InputShadowExtent { get; set; }
+public virtual CoreGraphics.CGRect InputShadowExtent { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float ShadowAmount { get; set; }
+public virtual float ShadowAmount { get; set; }
-public abstract float ShadowSize { get; set; }
+public virtual float ShadowSize { get; set; }

Type Changed: CoreImage.ICIPaletteCentroidProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage PaletteImage { get; set; }
+public virtual CIImage PaletteImage { get; set; }
-public abstract bool Perceptual { get; set; }
+public virtual bool Perceptual { get; set; }

Type Changed: CoreImage.ICIPalettizeProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage PaletteImage { get; set; }
+public virtual CIImage PaletteImage { get; set; }
-public abstract bool Perceptual { get; set; }
+public virtual bool Perceptual { get; set; }

Type Changed: CoreImage.ICIParallelogramTileProtocol

Modified properties:

-public abstract float AcuteAngle { get; set; }
+public virtual float AcuteAngle { get; set; }
-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIPdf417BarcodeGeneratorProtocol

Modified properties:

-public abstract float InputAlwaysSpecifyCompaction { get; set; }
+public virtual float InputAlwaysSpecifyCompaction { get; set; }
-public abstract float InputCompactStyle { get; set; }
+public virtual float InputCompactStyle { get; set; }
-public abstract float InputCompactionMode { get; set; }
+public virtual float InputCompactionMode { get; set; }
-public abstract float InputCorrectionLevel { get; set; }
+public virtual float InputCorrectionLevel { get; set; }
-public abstract float InputDataColumns { get; set; }
+public virtual float InputDataColumns { get; set; }
-public abstract float InputRows { get; set; }
+public virtual float InputRows { get; set; }
-public abstract float MaxHeight { get; set; }
+public virtual float MaxHeight { get; set; }
-public abstract float MaxWidth { get; set; }
+public virtual float MaxWidth { get; set; }
-public abstract Foundation.NSData Message { get; set; }
+public virtual Foundation.NSData Message { get; set; }
-public abstract float MinHeight { get; set; }
+public virtual float MinHeight { get; set; }
-public abstract float MinWidth { get; set; }
+public virtual float MinWidth { get; set; }
-public abstract float PreferredAspectRatio { get; set; }
+public virtual float PreferredAspectRatio { get; set; }

Type Changed: CoreImage.ICIPersonSegmentationProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract UIntPtr QualityLevel { get; set; }
+public virtual UIntPtr QualityLevel { get; set; }

Type Changed: CoreImage.ICIPerspectiveCorrectionProtocol

Modified properties:

-public abstract bool Crop { get; set; }
+public virtual bool Crop { get; set; }

Type Changed: CoreImage.ICIPerspectiveRotateProtocol

Modified properties:

-public abstract float FocalLength { get; set; }
+public virtual float FocalLength { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Pitch { get; set; }
+public virtual float Pitch { get; set; }
-public abstract float Roll { get; set; }
+public virtual float Roll { get; set; }
-public abstract float Yaw { get; set; }
+public virtual float Yaw { get; set; }

Type Changed: CoreImage.ICIPerspectiveTileProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputBottomLeft { get; set; }
+public virtual CoreGraphics.CGPoint InputBottomLeft { get; set; }
-public abstract CoreGraphics.CGPoint InputBottomRight { get; set; }
+public virtual CoreGraphics.CGPoint InputBottomRight { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputTopLeft { get; set; }
+public virtual CoreGraphics.CGPoint InputTopLeft { get; set; }
-public abstract CoreGraphics.CGPoint InputTopRight { get; set; }
+public virtual CoreGraphics.CGPoint InputTopRight { get; set; }

Type Changed: CoreImage.ICIPerspectiveTransformWithExtentProtocol

Modified properties:

-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }

Type Changed: CoreImage.ICIPhotoEffectProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Added property:

public virtual bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIPinchDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIPixellateProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIPointillizeProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIQRCodeGeneratorProtocol

Modified properties:

-public abstract string CorrectionLevel { get; set; }
+public virtual string CorrectionLevel { get; set; }
-public abstract Foundation.NSData Message { get; set; }
+public virtual Foundation.NSData Message { get; set; }

Type Changed: CoreImage.ICIRadialGradientProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Radius0 { get; set; }
+public virtual float Radius0 { get; set; }
-public abstract float Radius1 { get; set; }
+public virtual float Radius1 { get; set; }

Type Changed: CoreImage.ICIRippleTransitionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }
-public abstract CIImage ShadingImage { get; set; }
+public virtual CIImage ShadingImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIRoundedRectangleGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIRoundedRectangleStrokeGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICISaliencyMapProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICISepiaToneProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }

Type Changed: CoreImage.ICIShadedMaterialProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }
-public abstract CIImage ShadingImage { get; set; }
+public virtual CIImage ShadingImage { get; set; }

Type Changed: CoreImage.ICISharpenLuminanceProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }

Type Changed: CoreImage.ICISixfoldReflectedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICISixfoldRotatedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICISmoothLinearGradientProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }

Type Changed: CoreImage.ICISobelGradientsProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICISpotColorProtocol

Modified properties:

-public abstract CIColor CenterColor1 { get; set; }
+public virtual CIColor CenterColor1 { get; set; }
-public abstract CIColor CenterColor2 { get; set; }
+public virtual CIColor CenterColor2 { get; set; }
-public abstract CIColor CenterColor3 { get; set; }
+public virtual CIColor CenterColor3 { get; set; }
-public abstract float Closeness1 { get; set; }
+public virtual float Closeness1 { get; set; }
-public abstract float Closeness2 { get; set; }
+public virtual float Closeness2 { get; set; }
-public abstract float Closeness3 { get; set; }
+public virtual float Closeness3 { get; set; }
-public abstract float Contrast1 { get; set; }
+public virtual float Contrast1 { get; set; }
-public abstract float Contrast2 { get; set; }
+public virtual float Contrast2 { get; set; }
-public abstract float Contrast3 { get; set; }
+public virtual float Contrast3 { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIColor ReplacementColor1 { get; set; }
+public virtual CIColor ReplacementColor1 { get; set; }
-public abstract CIColor ReplacementColor2 { get; set; }
+public virtual CIColor ReplacementColor2 { get; set; }
-public abstract CIColor ReplacementColor3 { get; set; }
+public virtual CIColor ReplacementColor3 { get; set; }

Type Changed: CoreImage.ICISpotLightProtocol

Modified properties:

-public abstract float Brightness { get; set; }
+public virtual float Brightness { get; set; }
-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract float Concentration { get; set; }
+public virtual float Concentration { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector LightPointsAt { get; set; }
+public virtual CIVector LightPointsAt { get; set; }
-public abstract CIVector LightPosition { get; set; }
+public virtual CIVector LightPosition { get; set; }

Type Changed: CoreImage.ICISrgbToneCurveToLinearProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIStarShineGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract float CrossAngle { get; set; }
+public virtual float CrossAngle { get; set; }
-public abstract float CrossOpacity { get; set; }
+public virtual float CrossOpacity { get; set; }
-public abstract float CrossScale { get; set; }
+public virtual float CrossScale { get; set; }
-public abstract float CrossWidth { get; set; }
+public virtual float CrossWidth { get; set; }
-public abstract float Epsilon { get; set; }
+public virtual float Epsilon { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIStraightenProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIStretchCropProtocol

Modified properties:

-public abstract float CenterStretchAmount { get; set; }
+public virtual float CenterStretchAmount { get; set; }
-public abstract float CropAmount { get; set; }
+public virtual float CropAmount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputSize { get; set; }
+public virtual CoreGraphics.CGPoint InputSize { get; set; }

Type Changed: CoreImage.ICIStripesGeneratorProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICISunbeamsGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float MaxStriationRadius { get; set; }
+public virtual float MaxStriationRadius { get; set; }
-public abstract float StriationContrast { get; set; }
+public virtual float StriationContrast { get; set; }
-public abstract float StriationStrength { get; set; }
+public virtual float StriationStrength { get; set; }
-public abstract float SunRadius { get; set; }
+public virtual float SunRadius { get; set; }
-public abstract float Time { get; set; }
+public virtual float Time { get; set; }

Type Changed: CoreImage.ICISwipeTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Opacity { get; set; }
+public virtual float Opacity { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICITemperatureAndTintProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector Neutral { get; set; }
+public virtual CIVector Neutral { get; set; }
-public abstract CIVector TargetNeutral { get; set; }
+public virtual CIVector TargetNeutral { get; set; }

Type Changed: CoreImage.ICITextImageGeneratorProtocol

Modified properties:

-public abstract string FontName { get; set; }
+public virtual string FontName { get; set; }
-public abstract float FontSize { get; set; }
+public virtual float FontSize { get; set; }
-public abstract float ScaleFactor { get; set; }
+public virtual float ScaleFactor { get; set; }
-public abstract string Text { get; set; }
+public virtual string Text { get; set; }

Added property:

public virtual float Padding { get; set; }

Type Changed: CoreImage.ICIThermalProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIToneCurveProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint2 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint2 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint3 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint3 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint4 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint4 { get; set; }

Type Changed: CoreImage.ICITorusLensDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Refraction { get; set; }
+public virtual float Refraction { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICITransitionFilterProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage TargetImage { get; set; }
+public virtual CIImage TargetImage { get; set; }
-public abstract float Time { get; set; }
+public virtual float Time { get; set; }

Type Changed: CoreImage.ICITriangleKaleidoscopeProtocol

Modified properties:

-public abstract float Decay { get; set; }
+public virtual float Decay { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint { get; set; }
-public abstract float Rotation { get; set; }
+public virtual float Rotation { get; set; }
-public abstract float Size { get; set; }
+public virtual float Size { get; set; }

Type Changed: CoreImage.ICITriangleTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICITwelvefoldReflectedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICITwirlDistortionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIUnsharpMaskProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIVibranceProtocol

Modified properties:

-public abstract float Amount { get; set; }
+public virtual float Amount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIVignetteEffectProtocol

Modified properties:

-public abstract float Falloff { get; set; }
+public virtual float Falloff { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIVignetteProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIVortexDistortionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIWhitePointAdjustProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIXRayProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIZoomBlurProtocol

Modified properties:

-public abstract float Amount { get; set; }
+public virtual float Amount { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Namespace CoreLocation

Type Changed: CoreLocation.ICLLocationManagerDelegate

Added methods:

public virtual void AuthorizationChanged (CLLocationManager manager, CLAuthorizationStatus status);
public virtual void DeferredUpdatesFinished (CLLocationManager manager, Foundation.NSError error);
public virtual void DidChangeAuthorization (CLLocationManager manager);
public virtual void DidDetermineState (CLLocationManager manager, CLRegionState state, CLRegion region);
public virtual void DidFailRangingBeacons (CLLocationManager manager, CLBeaconIdentityConstraint beaconConstraint, Foundation.NSError error);
public virtual void DidRangeBeacons (CLLocationManager manager, CLBeacon[] beacons, CLBeaconRegion region);
public virtual void DidRangeBeaconsSatisfyingConstraint (CLLocationManager manager, CLBeacon[] beacons, CLBeaconIdentityConstraint beaconConstraint);
public virtual void DidStartMonitoringForRegion (CLLocationManager manager, CLRegion region);
public virtual void DidVisit (CLLocationManager manager, CLVisit visit);
public virtual void Failed (CLLocationManager manager, Foundation.NSError error);
public virtual void LocationUpdatesPaused (CLLocationManager manager);
public virtual void LocationUpdatesResumed (CLLocationManager manager);
public virtual void LocationsUpdated (CLLocationManager manager, CLLocation[] locations);
public virtual void MonitoringFailed (CLLocationManager manager, CLRegion region, Foundation.NSError error);
public virtual void RangingBeaconsDidFailForRegion (CLLocationManager manager, CLBeaconRegion region, Foundation.NSError error);
public virtual void RegionEntered (CLLocationManager manager, CLRegion region);
public virtual void RegionLeft (CLLocationManager manager, CLRegion region);
public virtual bool ShouldDisplayHeadingCalibration (CLLocationManager manager);
public virtual void UpdatedHeading (CLLocationManager manager, CLHeading newHeading);
public virtual void UpdatedLocation (CLLocationManager manager, CLLocation newLocation, CLLocation oldLocation);

Type Changed: CoreLocation.ICLLocationPushServiceExtension

Modified methods:

-public abstract void DidReceiveLocationPushPayload (Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% payload, System.Action completion)
+public virtual void DidReceiveLocationPushPayload (Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% payload, System.Action completion)

Added method:

public virtual void ServiceExtensionWillTerminate ();

Namespace CoreML

Type Changed: CoreML.IMLBatchProvider

Modified properties:

-public abstract IntPtr Count { get; }
+public virtual IntPtr Count { get; }

Modified methods:

-public abstract IMLFeatureProvider GetFeatures (IntPtr index)
+public virtual IMLFeatureProvider GetFeatures (IntPtr index)

Type Changed: CoreML.IMLCustomLayer

Modified methods:

-public abstract bool EvaluateOnCpu (MLMultiArray[] inputs, MLMultiArray[] outputs, out Foundation.NSError error)
+public virtual bool EvaluateOnCpu (MLMultiArray[] inputs, MLMultiArray[] outputs, out Foundation.NSError error)
-public abstract Foundation.NSArray[] GetOutputShapes (Foundation.NSArray[] inputShapes, out Foundation.NSError error)
+public virtual Foundation.NSArray[] GetOutputShapes (Foundation.NSArray[] inputShapes, out Foundation.NSError error)
-public abstract bool SetWeightData (Foundation.NSData[] weights, out Foundation.NSError error)
+public virtual bool SetWeightData (Foundation.NSData[] weights, out Foundation.NSError error)

Added method:

public virtual bool Encode (Metal.IMTLCommandBuffer commandBuffer, Metal.IMTLTexture[] inputs, Metal.IMTLTexture[] outputs, out Foundation.NSError error);

Type Changed: CoreML.IMLCustomModel

Modified methods:

-public abstract IMLFeatureProvider GetPrediction (IMLFeatureProvider inputFeatures, MLPredictionOptions options, out Foundation.NSError error)
+public virtual IMLFeatureProvider GetPrediction (IMLFeatureProvider inputFeatures, MLPredictionOptions options, out Foundation.NSError error)

Added methods:

public static T CreateInstance<T> (MLModelDescription modelDescription, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> parameters, out Foundation.NSError error);
public virtual IMLBatchProvider GetPredictions (IMLBatchProvider inputBatch, MLPredictionOptions options, out Foundation.NSError error);

Type Changed: CoreML.IMLFeatureProvider

Modified properties:

-public abstract Foundation.NSSet%LESSERTHANREPLACEMENT%Foundation.NSString%GREATERTHANREPLACEMENT% FeatureNames { get; }
+public virtual Foundation.NSSet%LESSERTHANREPLACEMENT%Foundation.NSString%GREATERTHANREPLACEMENT% FeatureNames { get; }

Modified methods:

-public abstract MLFeatureValue GetFeatureValue (string featureName)
+public virtual MLFeatureValue GetFeatureValue (string featureName)

Type Changed: CoreML.IMLWritable

Modified methods:

-public abstract bool Write (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual bool Write (Foundation.NSUrl url, out Foundation.NSError error)

Type Changed: CoreML.MLModelConfiguration

Added property:

public virtual MLOptimizationHints OptimizationHints { get; set; }

New Type: CoreML.MLComputePlan

public class MLComputePlan : Foundation.NSObject {
	// constructors
	protected MLComputePlan (Foundation.NSObjectFlag t);
	protected MLComputePlan (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructure ModelStructure { get; }
	// methods
	public virtual MLComputePlanDeviceUsage ComputeDeviceUsage (MLModelStructureNeuralNetworkLayer neuralNetworkLayer);
	public virtual MLComputePlanDeviceUsage ComputeDeviceUsage (MLModelStructureProgramOperation programOperation);
	public virtual MLComputePlanCost GetEstimatedCost (MLModelStructureProgramOperation programOperation);
	public static void Load (MLModelAsset modelAsset, MLModelConfiguration configuration, System.Action<MLComputePlan,Foundation.NSError> handler);
	public static void Load (Foundation.NSUrl contentsUrl, MLModelConfiguration configuration, System.Action<MLComputePlan,Foundation.NSError> handler);
}

New Type: CoreML.MLComputePlanCost

public class MLComputePlanCost : Foundation.NSObject {
	// constructors
	protected MLComputePlanCost (Foundation.NSObjectFlag t);
	protected MLComputePlanCost (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual double Weight { get; }
}

New Type: CoreML.MLComputePlanDeviceUsage

public class MLComputePlanDeviceUsage : Foundation.NSObject {
	// constructors
	protected MLComputePlanDeviceUsage (Foundation.NSObjectFlag t);
	protected MLComputePlanDeviceUsage (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IMLComputeDeviceProtocol PreferredComputeDevice { get; }
	public virtual IMLComputeDeviceProtocol[] SupportedComputeDevices { get; }
}

New Type: CoreML.MLModelStructure

public class MLModelStructure : Foundation.NSObject {
	// constructors
	protected MLModelStructure (Foundation.NSObjectFlag t);
	protected MLModelStructure (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructureNeuralNetwork NeuralNetwork { get; }
	public virtual MLModelStructurePipeline Pipeline { get; }
	public virtual MLModelStructureProgram Program { get; }
	// methods
	public static void Load (MLModelAsset modelAsset, System.Action<MLModelStructure,Foundation.NSError> handler);
	public static void Load (Foundation.NSUrl url, System.Action<MLModelStructure,Foundation.NSError> handler);
}

New Type: CoreML.MLModelStructureNeuralNetwork

public class MLModelStructureNeuralNetwork : Foundation.NSObject {
	// constructors
	protected MLModelStructureNeuralNetwork (Foundation.NSObjectFlag t);
	protected MLModelStructureNeuralNetwork (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructureNeuralNetworkLayer[] Layers { get; }
}

New Type: CoreML.MLModelStructureNeuralNetworkLayer

public class MLModelStructureNeuralNetworkLayer : Foundation.NSObject {
	// constructors
	protected MLModelStructureNeuralNetworkLayer (Foundation.NSObjectFlag t);
	protected MLModelStructureNeuralNetworkLayer (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string[] InputNames { get; }
	public virtual string Name { get; }
	public virtual string[] OutputNames { get; }
	public virtual string Type { get; }
}

New Type: CoreML.MLModelStructurePipeline

public class MLModelStructurePipeline : Foundation.NSObject {
	// constructors
	protected MLModelStructurePipeline (Foundation.NSObjectFlag t);
	protected MLModelStructurePipeline (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string[] SubModelNames { get; }
	public virtual MLModelStructure[] SubModels { get; }
}

New Type: CoreML.MLModelStructureProgram

public class MLModelStructureProgram : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgram (Foundation.NSObjectFlag t);
	protected MLModelStructureProgram (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,CoreML.MLModelStructureProgramFunction> Functions { get; }
}

New Type: CoreML.MLModelStructureProgramArgument

public class MLModelStructureProgramArgument : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramArgument (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramArgument (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual MLModelStructureProgramBinding[] Bindings { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CoreML.MLModelStructureProgramBinding

public class MLModelStructureProgramBinding : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramBinding (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramBinding (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Name { get; }
	public virtual MLModelStructureProgramValue Value { get; }
}

New Type: CoreML.MLModelStructureProgramBlock

public class MLModelStructureProgramBlock : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramBlock (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramBlock (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructureProgramNamedValueType[] Inputs { get; }
	public virtual MLModelStructureProgramOperation[] Operations { get; }
	public virtual string[] OutputNames { get; }
}

New Type: CoreML.MLModelStructureProgramFunction

public class MLModelStructureProgramFunction : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramFunction (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramFunction (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual MLModelStructureProgramBlock Block { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructureProgramNamedValueType[] Inputs { get; }
}

New Type: CoreML.MLModelStructureProgramNamedValueType

public class MLModelStructureProgramNamedValueType : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramNamedValueType (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramNamedValueType (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Name { get; }
	public virtual MLModelStructureProgramValueType Type { get; }
}

New Type: CoreML.MLModelStructureProgramOperation

public class MLModelStructureProgramOperation : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramOperation (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramOperation (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual MLModelStructureProgramBlock[] Blocks { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,CoreML.MLModelStructureProgramArgument> Inputs { get; }
	public virtual string OperatorName { get; }
	public virtual MLModelStructureProgramNamedValueType[] Outputs { get; }
}

New Type: CoreML.MLModelStructureProgramValue

public class MLModelStructureProgramValue : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramValue (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramValue (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CoreML.MLModelStructureProgramValueType

public class MLModelStructureProgramValueType : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramValueType (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramValueType (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CoreML.MLOptimizationHints

public class MLOptimizationHints : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MLOptimizationHints ();
	public MLOptimizationHints (Foundation.NSCoder coder);
	protected MLOptimizationHints (Foundation.NSObjectFlag t);
	protected MLOptimizationHints (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLReshapeFrequencyHint ReshapeFrequency { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreML.MLReshapeFrequencyHint

[Serializable]
public enum MLReshapeFrequencyHint {
	Frequent = 0,
	Infrequent = 1,
}

Namespace CoreMidi

Type Changed: CoreMidi.IMidiCIProfileResponderDelegate

Modified methods:

-public abstract bool ConnectInitiator (Foundation.NSNumber initiatorMuid, MidiCIDeviceInfo deviceInfo)
+public virtual bool ConnectInitiator (Foundation.NSNumber initiatorMuid, MidiCIDeviceInfo deviceInfo)
-public abstract void InitiatorDisconnected (Foundation.NSNumber initiatorMuid)
+public virtual void InitiatorDisconnected (Foundation.NSNumber initiatorMuid)

Added methods:

public virtual void HandleData (MidiCIProfile profile, byte channel, Foundation.NSData inData);
public virtual bool WillSetProfile (MidiCIProfile profile, byte channel, bool shouldEnable);

Type Changed: CoreMidi.MidiDevice

Obsoleted properties:

 [Obsolete ("This API does not do anything on this platform.")]
 public string FactoryPatchNameFile { get; set; }
 [Obsolete ("This API does not do anything on this platform.")]
 public string UserPatchNameFile { get; set; }

Added property:

public MidiProtocolId ProtocolId { get; set; }

Type Changed: CoreMidi.MidiEndpoint

Added properties:

public MidiProtocolId ProtocolId { get; set; }
public ushort UmpActiveGroupBitmap { get; set; }
public bool UmpCanTransmitGroupless { get; set; }

Type Changed: CoreMidi.MidiEntity

Added properties:

public MidiProtocolId ProtocolId { get; set; }
public ushort UmpActiveGroupBitmap { get; set; }
public bool UmpCanTransmitGroupless { get; set; }

Type Changed: CoreMidi.MidiPacket

Obsoleted properties:

 [Obsolete ("This property may return a pointer to a managed object, and this pointer is never safe to use. Use ByteArray or BytePointer instead.")]
 public IntPtr Bytes { get; }

Added properties:

public byte[] ByteArray { get; }
public IntPtr BytePointer { get; }

Namespace CoreMotion

Type Changed: CoreMotion.ICMHeadphoneMotionManagerDelegate

Added methods:

public virtual void DidConnect (CMHeadphoneMotionManager manager);
public virtual void DidDisconnect (CMHeadphoneMotionManager manager);

Type Changed: CoreMotion.ICMWaterSubmersionManagerDelegate

Modified methods:

-public abstract void DidUpdateEvent (CMWaterSubmersionManager manager, CMWaterSubmersionEvent event)
+public virtual void DidUpdateEvent (CMWaterSubmersionManager manager, CMWaterSubmersionEvent event)
-public abstract void DidUpdateMeasurement (CMWaterSubmersionManager manager, CMWaterSubmersionMeasurement measurement)
+public virtual void DidUpdateMeasurement (CMWaterSubmersionManager manager, CMWaterSubmersionMeasurement measurement)
-public abstract void DidUpdateTemperature (CMWaterSubmersionManager manager, CMWaterTemperature measurement)
+public virtual void DidUpdateTemperature (CMWaterSubmersionManager manager, CMWaterTemperature measurement)
-public abstract void ErrorOccurred (CMWaterSubmersionManager manager, Foundation.NSError error)
+public virtual void ErrorOccurred (CMWaterSubmersionManager manager, Foundation.NSError error)

Namespace CoreNFC

Type Changed: CoreNFC.INFCFeliCaTag

Modified properties:

-public abstract Foundation.NSData CurrentIdm { get; }
+public virtual Foundation.NSData CurrentIdm { get; }
-public abstract Foundation.NSData CurrentSystemCode { get; }
+public virtual Foundation.NSData CurrentSystemCode { get; }

Modified methods:

-public abstract void Polling (Foundation.NSData systemCode, NFCFeliCaPollingRequestCode requestCode, NFCFeliCaPollingTimeSlot timeSlot, NFCFeliCaPollingCompletionHandler completionHandler)
+public virtual void Polling (Foundation.NSData systemCode, NFCFeliCaPollingRequestCode requestCode, NFCFeliCaPollingTimeSlot timeSlot, NFCFeliCaPollingCompletionHandler completionHandler)
-public abstract void ReadWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, NFCFeliCaReadWithoutEncryptionCompletionHandler completionHandler)
+public virtual void ReadWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, NFCFeliCaReadWithoutEncryptionCompletionHandler completionHandler)
-public abstract void RequestResponse (System.Action%LESSERTHANREPLACEMENT%System.IntPtr,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void RequestResponse (System.Action%LESSERTHANREPLACEMENT%System.IntPtr,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void RequestService (Foundation.NSData[] nodeCodeList, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void RequestService (Foundation.NSData[] nodeCodeList, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void RequestServiceV2 (Foundation.NSData[] nodeCodeList, NFCFeliCaRequestServiceV2CompletionHandler completionHandler)
+public virtual void RequestServiceV2 (Foundation.NSData[] nodeCodeList, NFCFeliCaRequestServiceV2CompletionHandler completionHandler)
-public abstract void RequestSpecificationVersion (NFCFeliCaRequestSpecificationVersionCompletionHandler completionHandler)
+public virtual void RequestSpecificationVersion (NFCFeliCaRequestSpecificationVersionCompletionHandler completionHandler)
-public abstract void RequestSystemCode (System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void RequestSystemCode (System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ResetMode (NFCFeliCaStatus1Status2CompletionHandler completionHandler)
+public virtual void ResetMode (NFCFeliCaStatus1Status2CompletionHandler completionHandler)
-public abstract void Send (Foundation.NSData commandPacket, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Send (Foundation.NSData commandPacket, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, Foundation.NSData[] blockData, NFCFeliCaStatus1Status2CompletionHandler completionHandler)
+public virtual void WriteWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, Foundation.NSData[] blockData, NFCFeliCaStatus1Status2CompletionHandler completionHandler)

Type Changed: CoreNFC.INFCIso15693Tag

Modified properties:

-public abstract UIntPtr IcManufacturerCode { get; }
+public virtual UIntPtr IcManufacturerCode { get; }
-public abstract Foundation.NSData IcSerialNumber { get; }
+public virtual Foundation.NSData IcSerialNumber { get; }
-public abstract Foundation.NSData Identifier { get; }
+public virtual Foundation.NSData Identifier { get; }

Modified methods:

-public abstract void Authenticate (NFCIso15693RequestFlag flags, IntPtr cryptoSuiteIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler)
+public virtual void Authenticate (NFCIso15693RequestFlag flags, IntPtr cryptoSuiteIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler)
-public abstract void Challenge (NFCIso15693RequestFlag flags, IntPtr cryptoSuiteIdentifier, Foundation.NSData message, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Challenge (NFCIso15693RequestFlag flags, IntPtr cryptoSuiteIdentifier, Foundation.NSData message, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void CustomCommand (NFCIso15693RequestFlag flags, IntPtr customCommandCode, Foundation.NSData customRequestParameters, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CustomCommand (NFCIso15693RequestFlag flags, IntPtr customCommandCode, Foundation.NSData customRequestParameters, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedFastReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler)
+public virtual void ExtendedFastReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler)
-public abstract void ExtendedGetMultipleBlockSecurityStatus (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagGetMultipleBlockSecurityStatusCallback completionHandler)
+public virtual void ExtendedGetMultipleBlockSecurityStatus (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagGetMultipleBlockSecurityStatusCallback completionHandler)
-public abstract void ExtendedLockBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedLockBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedReadSingleBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedReadSingleBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedWriteMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedWriteMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedWriteSingleBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, Foundation.NSData dataBlock, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedWriteSingleBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, Foundation.NSData dataBlock, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void FastReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler)
+public virtual void FastReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler)
-public abstract void GetMultipleBlockSecurityStatus (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSNumber[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void GetMultipleBlockSecurityStatus (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSNumber[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void GetSystemInfo (NFCIso15693RequestFlag flags, NFCGetSystemInfoCompletionHandler completionHandler)
+public virtual void GetSystemInfo (NFCIso15693RequestFlag flags, NFCGetSystemInfoCompletionHandler completionHandler)
-public abstract void GetSystemInfoAndUid (NFCIso15693RequestFlag flags, NFCIso15693TagGetSystemInfoAndUidCallback completionHandler)
+public virtual void GetSystemInfoAndUid (NFCIso15693RequestFlag flags, NFCIso15693TagGetSystemInfoAndUidCallback completionHandler)
-public abstract void KeyUpdate (NFCIso15693RequestFlag flags, IntPtr keyIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler)
+public virtual void KeyUpdate (NFCIso15693RequestFlag flags, IntPtr keyIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler)
-public abstract void LockAfi (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void LockAfi (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void LockBlock (NFCIso15693RequestFlag flags, byte blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void LockBlock (NFCIso15693RequestFlag flags, byte blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void LockDfsi (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void LockDfsi (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void LockDsfId (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void LockDsfId (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ReadBuffer (NFCIso15693RequestFlag flags, NFCIso15693TagResponseCallback completionHandler)
+public virtual void ReadBuffer (NFCIso15693RequestFlag flags, NFCIso15693TagResponseCallback completionHandler)
-public abstract void ReadMultipleBlocks (NFCIso15693ReadMultipleBlocksConfiguration readConfiguration, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ReadMultipleBlocks (NFCIso15693ReadMultipleBlocksConfiguration readConfiguration, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ReadSingleBlock (NFCIso15693RequestFlag flags, byte blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ReadSingleBlock (NFCIso15693RequestFlag flags, byte blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ResetToReady (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ResetToReady (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void Select (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Select (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void SendCustomCommand (NFCIso15693CustomCommandConfiguration commandConfiguration, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void SendCustomCommand (NFCIso15693CustomCommandConfiguration commandConfiguration, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void SendRequest (IntPtr flags, IntPtr commandCode, Foundation.NSData data, NFCIso15693TagResponseCallback completionHandler)
+public virtual void SendRequest (IntPtr flags, IntPtr commandCode, Foundation.NSData data, NFCIso15693TagResponseCallback completionHandler)
-public abstract void StayQuiet (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void StayQuiet (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteAfi (NFCIso15693RequestFlag flags, byte afi, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteAfi (NFCIso15693RequestFlag flags, byte afi, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteDsfi (NFCIso15693RequestFlag flags, byte dsfid, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteDsfi (NFCIso15693RequestFlag flags, byte dsfid, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteSingleBlock (NFCIso15693RequestFlag flags, byte blockNumber, Foundation.NSData dataBlock, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteSingleBlock (NFCIso15693RequestFlag flags, byte blockNumber, Foundation.NSData dataBlock, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Type Changed: CoreNFC.INFCIso7816Tag

Modified properties:

-public abstract Foundation.NSData ApplicationData { get; }
+public virtual Foundation.NSData ApplicationData { get; }
-public abstract Foundation.NSData HistoricalBytes { get; }
+public virtual Foundation.NSData HistoricalBytes { get; }
-public abstract Foundation.NSData Identifier { get; }
+public virtual Foundation.NSData Identifier { get; }
-public abstract string InitialSelectedAid { get; }
+public virtual string InitialSelectedAid { get; }
-public abstract bool ProprietaryApplicationDataCoding { get; }
+public virtual bool ProprietaryApplicationDataCoding { get; }

Modified methods:

-public abstract void SendCommand (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler)
+public virtual void SendCommand (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler)

Type Changed: CoreNFC.INFCMiFareTag

Modified properties:

-public abstract Foundation.NSData HistoricalBytes { get; }
+public virtual Foundation.NSData HistoricalBytes { get; }
-public abstract Foundation.NSData Identifier { get; }
+public virtual Foundation.NSData Identifier { get; }
-public abstract NFCMiFareFamily MifareFamily { get; }
+public virtual NFCMiFareFamily MifareFamily { get; }

Modified methods:

-public abstract void SendMiFareCommand (Foundation.NSData command, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void SendMiFareCommand (Foundation.NSData command, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void SendMiFareIso7816Command (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler)
+public virtual void SendMiFareIso7816Command (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler)

Type Changed: CoreNFC.INFCNdefReaderSessionDelegate

Modified methods:

-public abstract void DidDetect (NFCNdefReaderSession session, NFCNdefMessage[] messages)
+public virtual void DidDetect (NFCNdefReaderSession session, NFCNdefMessage[] messages)
-public abstract void DidInvalidate (NFCNdefReaderSession session, Foundation.NSError error)
+public virtual void DidInvalidate (NFCNdefReaderSession session, Foundation.NSError error)

Added methods:

public virtual void DidBecomeActive (NFCNdefReaderSession session);
public virtual void DidDetectTags (NFCNdefReaderSession session, INFCNdefTag[] tags);

Type Changed: CoreNFC.INFCNdefTag

Modified properties:

-public abstract bool Available { get; }
+public virtual bool Available { get; }

Modified methods:

-public abstract void QueryNdefStatus (NFCQueryNdefStatusCompletionHandler completionHandler)
+public virtual void QueryNdefStatus (NFCQueryNdefStatusCompletionHandler completionHandler)
-public abstract void ReadNdef (System.Action%LESSERTHANREPLACEMENT%NFCNdefMessage,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ReadNdef (System.Action%LESSERTHANREPLACEMENT%NFCNdefMessage,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteLock (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteLock (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteNdef (NFCNdefMessage ndefMessage, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteNdef (NFCNdefMessage ndefMessage, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Type Changed: CoreNFC.INFCReaderSessionContract

Modified properties:

-public abstract string AlertMessage { get; set; }
+public virtual string AlertMessage { get; set; }
-public abstract bool Ready { get; }
+public virtual bool Ready { get; }

Modified methods:

-public abstract void BeginSession ()
+public virtual void BeginSession ()
-public abstract void InvalidateSession ()
+public virtual void InvalidateSession ()
-public abstract void InvalidateSession (string errorMessage)
+public virtual void InvalidateSession (string errorMessage)

Type Changed: CoreNFC.INFCReaderSessionDelegate

Modified methods:

-public abstract void DidBecomeActive (NFCReaderSession session)
+public virtual void DidBecomeActive (NFCReaderSession session)
-public abstract void DidInvalidate (NFCReaderSession session, Foundation.NSError error)
+public virtual void DidInvalidate (NFCReaderSession session, Foundation.NSError error)

Added method:

public virtual void DidDetectTags (NFCReaderSession session, INFCTag[] tags);

Type Changed: CoreNFC.INFCTag

Modified properties:

-public abstract INFCFeliCaTag AsNFCFeliCaTag { get; }
+public virtual INFCFeliCaTag AsNFCFeliCaTag { get; }
-public abstract INFCIso15693Tag AsNFCIso15693Tag { get; }
+public virtual INFCIso15693Tag AsNFCIso15693Tag { get; }
-public abstract INFCIso7816Tag AsNFCIso7816Tag { get; }
+public virtual INFCIso7816Tag AsNFCIso7816Tag { get; }
-public abstract INFCMiFareTag AsNFCMiFareTag { get; }
+public virtual INFCMiFareTag AsNFCMiFareTag { get; }
-public abstract bool Available { get; }
+public virtual bool Available { get; }
-public abstract NFCReaderSession Session { get; }
+public virtual NFCReaderSession Session { get; }
-public abstract NFCTagType Type { get; }
+public virtual NFCTagType Type { get; }

Type Changed: CoreNFC.INFCTagReaderSessionDelegate

Modified methods:

-public abstract void DidInvalidate (NFCTagReaderSession session, Foundation.NSError error)
+public virtual void DidInvalidate (NFCTagReaderSession session, Foundation.NSError error)

Added methods:

public virtual void DidBecomeActive (NFCTagReaderSession session);
public virtual void DidDetectTags (NFCTagReaderSession session, INFCTag[] tags);

Type Changed: CoreNFC.INFCVasReaderSessionDelegate

Modified methods:

-public abstract void DidInvalidate (NFCVasReaderSession session, Foundation.NSError error)
+public virtual void DidInvalidate (NFCVasReaderSession session, Foundation.NSError error)
-public abstract void DidReceiveVasResponses (NFCVasReaderSession session, NFCVasResponse[] responses)
+public virtual void DidReceiveVasResponses (NFCVasReaderSession session, NFCVasResponse[] responses)

Added method:

public virtual void DidBecomeActive (NFCVasReaderSession session);

Namespace CoreSpotlight

Type Changed: CoreSpotlight.ICSSearchableIndexDelegate

Modified methods:

-public abstract void ReindexAllSearchableItems (CSSearchableIndex searchableIndex, System.Action acknowledgementHandler)
+public virtual void ReindexAllSearchableItems (CSSearchableIndex searchableIndex, System.Action acknowledgementHandler)
-public abstract void ReindexSearchableItems (CSSearchableIndex searchableIndex, string[] identifiers, System.Action acknowledgementHandler)
+public virtual void ReindexSearchableItems (CSSearchableIndex searchableIndex, string[] identifiers, System.Action acknowledgementHandler)

Added methods:

public virtual void DidFinishThrottle (CSSearchableIndex searchableIndex);
public virtual void DidThrottle (CSSearchableIndex searchableIndex);
public virtual Foundation.NSData GetData (CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, out Foundation.NSError outError);
public virtual Foundation.NSUrl GetFileUrl (CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, bool inPlace, out Foundation.NSError outError);

Namespace CoreTelephony

Type Changed: CoreTelephony.ICTSubscriberDelegate

Modified methods:

-public abstract void SubscriberTokenRefreshed (CTSubscriber subscriber)
+public virtual void SubscriberTokenRefreshed (CTSubscriber subscriber)

Type Changed: CoreTelephony.ICTTelephonyNetworkInfoDelegate

Added method:

public virtual void DataServiceIdentifierDidChange (string identifier);

Namespace CoreText

Type Changed: CoreText.CTFontDescriptor

Obsoleted methods:

 [Obsolete ("Use 'MatchFontDescriptors (CTFontDescriptor[], NSSet, CTFontDescriptorProgressHandler)' instead.")]
 public static bool MatchFontDescriptors (CTFontDescriptor[] descriptors, Foundation.NSSet mandatoryAttributes, System.Func<CTFontDescriptorMatchingState,System.IntPtr,System.Boolean> progressHandler);

Added method:

public static bool MatchFontDescriptors (CTFontDescriptor[] descriptors, Foundation.NSSet mandatoryAttributes, CTFontDescriptor.CTFontDescriptorProgressHandler progressHandler);

Type Changed: CoreText.CTFontDescriptorAttributes

Added property:

public bool? WeakEnabled { get; set; }

New Type: CoreText.CTFontDescriptorMatchingProgress

public class CTFontDescriptorMatchingProgress : Foundation.DictionaryContainer {
	// constructors
	public CTFontDescriptorMatchingProgress ();
	public CTFontDescriptorMatchingProgress (Foundation.NSDictionary dictionary);
	// properties
	public long? CurrentAssetSize { get; }
	public CTFontDescriptor[] Descriptors { get; }
	public Foundation.NSError Error { get; }
	public double? Percentage { get; }
	public CTFontDescriptor[] Result { get; }
	public CTFontDescriptor SourceDescriptor { get; }
	public long? TotalAssetSize { get; }
	public long? TotalDownloadedSize { get; }
}

Namespace EventKitUI

Type Changed: EventKitUI.IEKCalendarChooserDelegate

Added methods:

public virtual void Cancelled (EKCalendarChooser calendarChooser);
public virtual void Finished (EKCalendarChooser calendarChooser);
public virtual void SelectionChanged (EKCalendarChooser calendarChooser);

Type Changed: EventKitUI.IEKEventEditViewDelegate

Modified methods:

-public abstract void Completed (EKEventEditViewController controller, EKEventEditViewAction action)
+public virtual void Completed (EKEventEditViewController controller, EKEventEditViewAction action)

Added method:

public virtual EventKit.EKCalendar GetDefaultCalendarForNewEvents (EKEventEditViewController controller);

Type Changed: EventKitUI.IEKEventViewDelegate

Modified methods:

-public abstract void Completed (EKEventViewController controller, EKEventViewAction action)
+public virtual void Completed (EKEventViewController controller, EKEventViewAction action)

Namespace ExternalAccessory

Type Changed: ExternalAccessory.IEAAccessoryDelegate

Added method:

public virtual void Disconnected (EAAccessory accessory);

Type Changed: ExternalAccessory.IEAWiFiUnconfiguredAccessoryBrowserDelegate

Modified methods:

-public abstract void DidFindUnconfiguredAccessories (EAWiFiUnconfiguredAccessoryBrowser browser, Foundation.NSSet accessories)
+public virtual void DidFindUnconfiguredAccessories (EAWiFiUnconfiguredAccessoryBrowser browser, Foundation.NSSet accessories)
-public abstract void DidFinishConfiguringAccessory (EAWiFiUnconfiguredAccessoryBrowser browser, EAWiFiUnconfiguredAccessory accessory, EAWiFiUnconfiguredAccessoryConfigurationStatus status)
+public virtual void DidFinishConfiguringAccessory (EAWiFiUnconfiguredAccessoryBrowser browser, EAWiFiUnconfiguredAccessory accessory, EAWiFiUnconfiguredAccessoryConfigurationStatus status)
-public abstract void DidRemoveUnconfiguredAccessories (EAWiFiUnconfiguredAccessoryBrowser browser, Foundation.NSSet accessories)
+public virtual void DidRemoveUnconfiguredAccessories (EAWiFiUnconfiguredAccessoryBrowser browser, Foundation.NSSet accessories)
-public abstract void DidUpdateState (EAWiFiUnconfiguredAccessoryBrowser browser, EAWiFiUnconfiguredAccessoryBrowserState state)
+public virtual void DidUpdateState (EAWiFiUnconfiguredAccessoryBrowser browser, EAWiFiUnconfiguredAccessoryBrowserState state)

Namespace FileProvider

Type Changed: FileProvider.INSFileProviderChangeObserver

Modified methods:

-public abstract void DidDeleteItems (string[] deletedItemIdentifiers)
+public virtual void DidDeleteItems (string[] deletedItemIdentifiers)
-public abstract void DidUpdateItems (INSFileProviderItem[] updatedItems)
+public virtual void DidUpdateItems (INSFileProviderItem[] updatedItems)
-public abstract void FinishEnumerating (Foundation.NSError error)
+public virtual void FinishEnumerating (Foundation.NSError error)
-public abstract void FinishEnumeratingChanges (Foundation.NSData anchor, bool moreComing)
+public virtual void FinishEnumeratingChanges (Foundation.NSData anchor, bool moreComing)

Added method:

public virtual IntPtr GetSuggestedBatchSize ();

Type Changed: FileProvider.INSFileProviderCustomAction

Modified methods:

-public abstract Foundation.NSProgress PerformAction (string actionIdentifier, string[] itemIdentifiers, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual Foundation.NSProgress PerformAction (string actionIdentifier, string[] itemIdentifiers, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Type Changed: FileProvider.INSFileProviderDomainState

Modified properties:

-public abstract NSFileProviderDomainVersion DomainVersion { get; }
+public virtual NSFileProviderDomainVersion DomainVersion { get; }
-public abstract Foundation.NSDictionary UserInfo { get; }
+public virtual Foundation.NSDictionary UserInfo { get; }

Type Changed: FileProvider.INSFileProviderEnumerating

Modified methods:

-public abstract INSFileProviderEnumerator GetEnumerator (string containerItemIdentifier, NSFileProviderRequest request, out Foundation.NSError error)
+public virtual INSFileProviderEnumerator GetEnumerator (string containerItemIdentifier, NSFileProviderRequest request, out Foundation.NSError error)

Type Changed: FileProvider.INSFileProviderEnumerationObserver

Modified methods:

-public abstract void DidEnumerateItems (INSFileProviderItem[] updatedItems)
+public virtual void DidEnumerateItems (INSFileProviderItem[] updatedItems)
-public abstract void FinishEnumerating (Foundation.NSData upToPage)
+public virtual void FinishEnumerating (Foundation.NSData upToPage)
-public abstract void FinishEnumerating (Foundation.NSError error)
+public virtual void FinishEnumerating (Foundation.NSError error)

Added method:

public virtual IntPtr GetSuggestedPageSize ();

Type Changed: FileProvider.INSFileProviderEnumerator

Modified methods:

-public abstract void EnumerateItems (INSFileProviderEnumerationObserver observer, Foundation.NSData startPage)
+public virtual void EnumerateItems (INSFileProviderEnumerationObserver observer, Foundation.NSData startPage)
-public abstract void Invalidate ()
+public virtual void Invalidate ()

Added methods:

public virtual void CurrentSyncAnchor (System.Action<Foundation.NSData> completionHandler);
public virtual void EnumerateChanges (INSFileProviderChangeObserver observer, Foundation.NSData syncAnchor);

Type Changed: FileProvider.INSFileProviderIncrementalContentFetching

Modified methods:

-public abstract Foundation.NSProgress FetchContents (string itemIdentifier, NSFileProviderItemVersion requestedVersion, Foundation.NSUrl existingContents, NSFileProviderItemVersion existingVersion, NSFileProviderRequest request, NSFileProviderFetchContentsCompletionHandler completionHandler)
+public virtual Foundation.NSProgress FetchContents (string itemIdentifier, NSFileProviderItemVersion requestedVersion, Foundation.NSUrl existingContents, NSFileProviderItemVersion existingVersion, NSFileProviderRequest request, NSFileProviderFetchContentsCompletionHandler completionHandler)

Type Changed: FileProvider.INSFileProviderItem

Modified properties:

-public abstract string Filename { get; }
+public virtual string Filename { get; }
-public abstract string Identifier { get; }
+public virtual string Identifier { get; }
-public abstract string ParentIdentifier { get; }
+public virtual string ParentIdentifier { get; }

Added properties:

public virtual NSFileProviderContentPolicy ContentPolicy { get; }
public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSData> ExtendedAttributes { get; }
public virtual NSFileProviderFileSystemFlags FileSystemFlags { get; }
public virtual NSFileProviderItemVersion ItemVersion { get; }
public virtual string SymlinkTargetPath { get; }
public virtual NSFileProviderTypeAndCreator TypeAndCreator { get; }
public virtual string TypeIdentifier { get; }

Added methods:

public virtual NSFileProviderItemCapabilities GetCapabilities ();
public virtual Foundation.NSNumber GetChildItemCount ();
public virtual Foundation.NSDate GetContentModificationDate ();
public virtual UniformTypeIdentifiers.UTType GetContentType ();
public virtual Foundation.NSDate GetCreationDate ();
public virtual Foundation.NSNumber GetDocumentSize ();
public virtual Foundation.NSError GetDownloadingError ();
public virtual Foundation.NSNumber GetFavoriteRank ();
public virtual Foundation.NSDate GetLastUsedDate ();
public virtual Foundation.NSPersonNameComponents GetMostRecentEditorNameComponents ();
public virtual Foundation.NSPersonNameComponents GetOwnerNameComponents ();
public virtual Foundation.NSData GetTagData ();
public virtual Foundation.NSError GetUploadingError ();
public virtual Foundation.NSDictionary GetUserInfo ();
public virtual Foundation.NSData GetVersionIdentifier ();
public virtual bool IsDownloaded ();
public virtual bool IsDownloading ();
public virtual bool IsMostRecentVersionDownloaded ();
public virtual bool IsShared ();
public virtual bool IsSharedByCurrentUser ();
public virtual bool IsTrashed ();
public virtual bool IsUploaded ();
public virtual bool IsUploading ();

Type Changed: FileProvider.INSFileProviderPendingSetEnumerator

Modified properties:

-public abstract NSFileProviderDomainVersion DomainVersion { get; }
+public virtual NSFileProviderDomainVersion DomainVersion { get; }
-public abstract double RefreshInterval { get; }
+public virtual double RefreshInterval { get; }

Added property:

public virtual bool MaximumSizeReached { get; }

Type Changed: FileProvider.INSFileProviderReplicatedExtension

Modified methods:

-public abstract Foundation.NSProgress CreateItem (INSFileProviderItem itemTemplate, NSFileProviderItemFields fields, Foundation.NSUrl url, NSFileProviderCreateItemOptions options, NSFileProviderRequest request, NSFileProviderCreateOrModifyItemCompletionHandler completionHandler)
+public virtual Foundation.NSProgress CreateItem (INSFileProviderItem itemTemplate, NSFileProviderItemFields fields, Foundation.NSUrl url, NSFileProviderCreateItemOptions options, NSFileProviderRequest request, NSFileProviderCreateOrModifyItemCompletionHandler completionHandler)
-public abstract Foundation.NSProgress DeleteItem (string identifier, NSFileProviderItemVersion version, NSFileProviderDeleteItemOptions options, NSFileProviderRequest request, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual Foundation.NSProgress DeleteItem (string identifier, NSFileProviderItemVersion version, NSFileProviderDeleteItemOptions options, NSFileProviderRequest request, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract Foundation.NSProgress FetchContents (string itemIdentifier, NSFileProviderItemVersion requestedVersion, NSFileProviderRequest request, NSFileProviderFetchContentsCompletionHandler completionHandler)
+public virtual Foundation.NSProgress FetchContents (string itemIdentifier, NSFileProviderItemVersion requestedVersion, NSFileProviderRequest request, NSFileProviderFetchContentsCompletionHandler completionHandler)
-public abstract Foundation.NSProgress GetItem (string identifier, NSFileProviderRequest request, System.Action%LESSERTHANREPLACEMENT%INSFileProviderItem,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual Foundation.NSProgress GetItem (string identifier, NSFileProviderRequest request, System.Action%LESSERTHANREPLACEMENT%INSFileProviderItem,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void Invalidate ()
+public virtual void Invalidate ()
-public abstract Foundation.NSProgress ModifyItem (INSFileProviderItem item, NSFileProviderItemVersion version, NSFileProviderItemFields changedFields, Foundation.NSUrl newContents, NSFileProviderModifyItemOptions options, NSFileProviderRequest request, NSFileProviderCreateOrModifyItemCompletionHandler completionHandler)
+public virtual Foundation.NSProgress ModifyItem (INSFileProviderItem item, NSFileProviderItemVersion version, NSFileProviderItemFields changedFields, Foundation.NSUrl newContents, NSFileProviderModifyItemOptions options, NSFileProviderRequest request, NSFileProviderCreateOrModifyItemCompletionHandler completionHandler)

Added methods:

public virtual void ImportDidFinish (System.Action completionHandler);
public virtual void MaterializedItemsDidChange (System.Action completionHandler);
public virtual void PendingItemsDidChange (System.Action completionHandler);

Type Changed: FileProvider.INSFileProviderServiceSource

Modified properties:

-public abstract string ServiceName { get; }
+public virtual string ServiceName { get; }

Added property:

public virtual bool Restricted { get; }

Modified methods:

-public abstract Foundation.NSXpcListenerEndpoint MakeListenerEndpoint (out Foundation.NSError error)
+public virtual Foundation.NSXpcListenerEndpoint MakeListenerEndpoint (out Foundation.NSError error)

Type Changed: FileProvider.INSFileProviderServicing

Modified methods:

-public abstract Foundation.NSProgress GetSupportedServiceSources (string itemIdentifier, System.Action%LESSERTHANREPLACEMENT%INSFileProviderServiceSource[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual Foundation.NSProgress GetSupportedServiceSources (string itemIdentifier, System.Action%LESSERTHANREPLACEMENT%INSFileProviderServiceSource[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Type Changed: FileProvider.INSFileProviderTestingChildrenEnumeration

Modified properties:

-public abstract string ItemIdentifier { get; }
+public virtual string ItemIdentifier { get; }
-public abstract NSFileProviderTestingOperationSide Side { get; }
+public virtual NSFileProviderTestingOperationSide Side { get; }

Type Changed: FileProvider.INSFileProviderTestingCollisionResolution

Modified properties:

-public abstract INSFileProviderItem RenamedItem { get; }
+public virtual INSFileProviderItem RenamedItem { get; }
-public abstract NSFileProviderTestingOperationSide Side { get; }
+public virtual NSFileProviderTestingOperationSide Side { get; }

Type Changed: FileProvider.INSFileProviderTestingContentFetch

Modified properties:

-public abstract string ItemIdentifier { get; }
+public virtual string ItemIdentifier { get; }
-public abstract NSFileProviderTestingOperationSide Side { get; }
+public virtual NSFileProviderTestingOperationSide Side { get; }

Type Changed: FileProvider.INSFileProviderTestingCreation

Modified properties:

-public abstract NSFileProviderDomainVersion DomainVersion { get; }
+public virtual NSFileProviderDomainVersion DomainVersion { get; }
-public abstract INSFileProviderItem SourceItem { get; }
+public virtual INSFileProviderItem SourceItem { get; }
-public abstract NSFileProviderTestingOperationSide TargetSide { get; }
+public virtual NSFileProviderTestingOperationSide TargetSide { get; }

Type Changed: FileProvider.INSFileProviderTestingDeletion

Modified properties:

-public abstract NSFileProviderDomainVersion DomainVersion { get; }
+public virtual NSFileProviderDomainVersion DomainVersion { get; }
-public abstract string SourceItemIdentifier { get; }
+public virtual string SourceItemIdentifier { get; }
-public abstract NSFileProviderItemVersion TargetItemBaseVersion { get; }
+public virtual NSFileProviderItemVersion TargetItemBaseVersion { get; }
-public abstract string TargetItemIdentifier { get; }
+public virtual string TargetItemIdentifier { get; }
-public abstract NSFileProviderTestingOperationSide TargetSide { get; }
+public virtual NSFileProviderTestingOperationSide TargetSide { get; }

Type Changed: FileProvider.INSFileProviderTestingIngestion

Modified properties:

-public abstract INSFileProviderItem Item { get; }
+public virtual INSFileProviderItem Item { get; }
-public abstract string ItemIdentifier { get; }
+public virtual string ItemIdentifier { get; }
-public abstract NSFileProviderTestingOperationSide Side { get; }
+public virtual NSFileProviderTestingOperationSide Side { get; }

Type Changed: FileProvider.INSFileProviderTestingLookup

Modified properties:

-public abstract string ItemIdentifier { get; }
+public virtual string ItemIdentifier { get; }
-public abstract NSFileProviderTestingOperationSide Side { get; }
+public virtual NSFileProviderTestingOperationSide Side { get; }

Type Changed: FileProvider.INSFileProviderTestingModification

Modified properties:

-public abstract NSFileProviderItemFields ChangedFields { get; }
+public virtual NSFileProviderItemFields ChangedFields { get; }
-public abstract NSFileProviderDomainVersion DomainVersion { get; }
+public virtual NSFileProviderDomainVersion DomainVersion { get; }
-public abstract INSFileProviderItem SourceItem { get; }
+public virtual INSFileProviderItem SourceItem { get; }
-public abstract NSFileProviderItemVersion TargetItemBaseVersion { get; }
+public virtual NSFileProviderItemVersion TargetItemBaseVersion { get; }
-public abstract string TargetItemIdentifier { get; }
+public virtual string TargetItemIdentifier { get; }
-public abstract NSFileProviderTestingOperationSide TargetSide { get; }
+public virtual NSFileProviderTestingOperationSide TargetSide { get; }

Type Changed: FileProvider.INSFileProviderTestingOperation

Modified properties:

-public abstract NSFileProviderTestingOperationType Type { get; }
+public virtual NSFileProviderTestingOperationType Type { get; }

Modified methods:

-public abstract INSFileProviderTestingChildrenEnumeration GetAsChildrenEnumeration ()
+public virtual INSFileProviderTestingChildrenEnumeration GetAsChildrenEnumeration ()
-public abstract INSFileProviderTestingCollisionResolution GetAsCollisionResolution ()
+public virtual INSFileProviderTestingCollisionResolution GetAsCollisionResolution ()
-public abstract INSFileProviderTestingContentFetch GetAsContentFetch ()
+public virtual INSFileProviderTestingContentFetch GetAsContentFetch ()
-public abstract INSFileProviderTestingCreation GetAsCreation ()
+public virtual INSFileProviderTestingCreation GetAsCreation ()
-public abstract INSFileProviderTestingDeletion GetAsDeletion ()
+public virtual INSFileProviderTestingDeletion GetAsDeletion ()
-public abstract INSFileProviderTestingIngestion GetAsIngestion ()
+public virtual INSFileProviderTestingIngestion GetAsIngestion ()
-public abstract INSFileProviderTestingLookup GetAsLookup ()
+public virtual INSFileProviderTestingLookup GetAsLookup ()
-public abstract INSFileProviderTestingModification GetAsModification ()
+public virtual INSFileProviderTestingModification GetAsModification ()

Type Changed: FileProvider.INSFileProviderThumbnailing

Modified methods:

-public abstract Foundation.NSProgress FetchThumbnails (string[] itemIdentifiers, CoreGraphics.CGSize size, NSFileProviderPerThumbnailCompletionHandler perThumbnailCompletionHandler, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual Foundation.NSProgress FetchThumbnails (string[] itemIdentifiers, CoreGraphics.CGSize size, NSFileProviderPerThumbnailCompletionHandler perThumbnailCompletionHandler, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Type Changed: FileProvider.NSFileProviderError

Added values:

ApplicationExtensionNotFound = -2014,
ProviderDomainNotFound = -2013,
ProviderDomainTemporarilyUnavailable = -2012,

Namespace Foundation

Type Changed: Foundation.DictionaryContainer

Added methods:

protected UIKit.UIEdgeInsets? GetUIEdgeInsets (NSString key);
protected void SetUIEdgeInsets (NSString key, UIKit.UIEdgeInsets? value);

Type Changed: Foundation.INSCacheDelegate

Added method:

public virtual void WillEvictObject (NSCache cache, NSObject obj);

Type Changed: Foundation.INSCoding

Modified methods:

-public abstract void EncodeTo (NSCoder encoder)
+public virtual void EncodeTo (NSCoder encoder)

Added method:

public static T CreateInstance<T> (NSCoder decoder);

Type Changed: Foundation.INSCopying

Modified methods:

-public abstract NSObject Copy (NSZone zone)
+public virtual NSObject Copy (NSZone zone)

Type Changed: Foundation.INSDiscardableContent

Modified properties:

-public abstract bool IsContentDiscarded { get; }
+public virtual bool IsContentDiscarded { get; }

Modified methods:

-public abstract bool BeginContentAccess ()
+public virtual bool BeginContentAccess ()
-public abstract void DiscardContentIfPossible ()
+public virtual void DiscardContentIfPossible ()
-public abstract void EndContentAccess ()
+public virtual void EndContentAccess ()

Type Changed: Foundation.INSExtensionRequestHandling

Modified methods:

-public abstract void BeginRequestWithExtensionContext (NSExtensionContext context)
+public virtual void BeginRequestWithExtensionContext (NSExtensionContext context)

Type Changed: Foundation.INSFileManagerDelegate

Added methods:

public virtual bool ShouldCopyItemAtPath (NSFileManager fm, NSString srcPath, NSString dstPath);
public virtual bool ShouldCopyItemAtUrl (NSFileManager fm, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldLinkItemAtPath (NSFileManager fileManager, string srcPath, string dstPath);
public virtual bool ShouldLinkItemAtUrl (NSFileManager fileManager, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldMoveItemAtPath (NSFileManager fileManager, string srcPath, string dstPath);
public virtual bool ShouldMoveItemAtUrl (NSFileManager fileManager, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldProceedAfterErrorCopyingItem (NSFileManager fileManager, NSError error, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldProceedAfterErrorCopyingItem (NSFileManager fileManager, NSError error, string srcPath, string dstPath);
public virtual bool ShouldProceedAfterErrorLinkingItem (NSFileManager fileManager, NSError error, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldProceedAfterErrorLinkingItem (NSFileManager fileManager, NSError error, string srcPath, string dstPath);
public virtual bool ShouldProceedAfterErrorMovingItem (NSFileManager fileManager, NSError error, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldProceedAfterErrorMovingItem (NSFileManager fileManager, NSError error, string srcPath, string dstPath);
public virtual bool ShouldProceedAfterErrorRemovingItem (NSFileManager fileManager, NSError error, NSUrl url);
public virtual bool ShouldProceedAfterErrorRemovingItem (NSFileManager fileManager, NSError error, string path);
public virtual bool ShouldRemoveItemAtPath (NSFileManager fileManager, string path);
public virtual bool ShouldRemoveItemAtUrl (NSFileManager fileManager, NSUrl url);

Type Changed: Foundation.INSFilePresenter

Modified properties:

-public abstract NSOperationQueue PresentedItemOperationQueue { get; }
+public virtual NSOperationQueue PresentedItemOperationQueue { get; }
-public abstract NSUrl PresentedItemUrl { get; }
+public virtual NSUrl PresentedItemUrl { get; }

Added property:

public virtual Foundation.NSSet<NSString> PresentedItemObservedUbiquityAttributes { get; }

Added methods:

public virtual void AccommodatePresentedItemDeletion (System.Action<NSError> completionHandler);
public virtual void AccommodatePresentedItemEviction (System.Action<NSError> completionHandler);
public virtual void AccommodatePresentedSubitemDeletion (NSUrl url, System.Action<NSError> completionHandler);
public virtual void PresentedItemChanged ();
public virtual void PresentedItemChangedUbiquityAttributes (Foundation.NSSet<NSString> attributes);
public virtual void PresentedItemGainedVersion (NSFileVersion version);
public virtual void PresentedItemLostVersion (NSFileVersion version);
public virtual void PresentedItemMoved (NSUrl newURL);
public virtual void PresentedItemResolveConflictVersion (NSFileVersion version);
public virtual void PresentedSubitemAppeared (NSUrl atUrl);
public virtual void PresentedSubitemChanged (NSUrl url);
public virtual void PresentedSubitemGainedVersion (NSUrl url, NSFileVersion version);
public virtual void PresentedSubitemLostVersion (NSUrl url, NSFileVersion version);
public virtual void PresentedSubitemMoved (NSUrl oldURL, NSUrl newURL);
public virtual void PresentedSubitemResolvedConflictVersion (NSUrl url, NSFileVersion version);
public virtual void RelinquishPresentedItemToReader (NSFilePresenterReacquirer readerAction);
public virtual void RelinquishPresentedItemToWriter (NSFilePresenterReacquirer writerAction);
public virtual void SavePresentedItemChanges (System.Action<NSError> completionHandler);

Type Changed: Foundation.INSItemProviderReading

Added methods:

public static INSItemProviderReading GetObject<T> (NSData data, string typeIdentifier, out NSError outError);
public static string[] GetReadableTypeIdentifiers<T> ();

Type Changed: Foundation.INSItemProviderWriting

Added property:

public virtual string[] WritableTypeIdentifiersForItemProvider { get; }

Modified methods:

-public abstract NSProgress LoadData (string typeIdentifier, System.Action%LESSERTHANREPLACEMENT%NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual NSProgress LoadData (string typeIdentifier, System.Action%LESSERTHANREPLACEMENT%NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Added methods:

public virtual NSItemProviderRepresentationVisibility GetItemProviderVisibilityForTypeIdentifier (string typeIdentifier);
public static string[] GetWritableTypeIdentifiers<T> ();
public virtual System.Threading.Tasks.Task<NSData> LoadDataAsync (string typeIdentifier);
public virtual System.Threading.Tasks.Task<NSData> LoadDataAsync (string typeIdentifier, out NSProgress result);

Type Changed: Foundation.INSKeyedArchiverDelegate

Added methods:

public virtual void EncodedObject (NSKeyedArchiver archiver, NSObject obj);
public virtual void Finished (NSKeyedArchiver archiver);
public virtual void Finishing (NSKeyedArchiver archiver);
public virtual void ReplacingObject (NSKeyedArchiver archiver, NSObject oldObject, NSObject newObject);
public virtual NSObject WillEncode (NSKeyedArchiver archiver, NSObject obj);

Type Changed: Foundation.INSKeyedUnarchiverDelegate

Added methods:

public virtual ObjCRuntime.Class CannotDecodeClass (NSKeyedUnarchiver unarchiver, string klass, string[] classes);
public virtual NSObject DecodedObject (NSKeyedUnarchiver unarchiver, NSObject obj);
public virtual void Finished (NSKeyedUnarchiver unarchiver);
public virtual void Finishing (NSKeyedUnarchiver unarchiver);
public virtual void ReplacingObject (NSKeyedUnarchiver unarchiver, NSObject oldObject, NSObject newObject);

Type Changed: Foundation.INSLocking

Modified methods:

-public abstract void Lock ()
+public virtual void Lock ()
-public abstract void Unlock ()
+public virtual void Unlock ()

Type Changed: Foundation.INSMachPortDelegate

Added method:

public virtual void MachMessageReceived (IntPtr msgHeader);

Type Changed: Foundation.INSMetadataQueryDelegate

Added methods:

public virtual NSObject ReplacementObjectForResultObject (NSMetadataQuery query, NSMetadataItem result);
public virtual NSObject ReplacementValueForAttributevalue (NSMetadataQuery query, string attributeName, NSObject value);

Type Changed: Foundation.INSMutableCopying

Modified methods:

-public abstract NSObject MutableCopy (NSZone zone)
+public virtual NSObject MutableCopy (NSZone zone)

Type Changed: Foundation.INSNetServiceBrowserDelegate

Added methods:

public virtual void DomainRemoved (NSNetServiceBrowser sender, string domain, bool moreComing);
public virtual void FoundDomain (NSNetServiceBrowser sender, string domain, bool moreComing);
public virtual void FoundService (NSNetServiceBrowser sender, NSNetService service, bool moreComing);
public virtual void NotSearched (NSNetServiceBrowser sender, NSDictionary errors);
public virtual void SearchStarted (NSNetServiceBrowser sender);
public virtual void SearchStopped (NSNetServiceBrowser sender);
public virtual void ServiceRemoved (NSNetServiceBrowser sender, NSNetService service, bool moreComing);

Type Changed: Foundation.INSNetServiceDelegate

Added methods:

public virtual void AddressResolved (NSNetService sender);
public virtual void DidAcceptConnection (NSNetService sender, NSInputStream inputStream, NSOutputStream outputStream);
public virtual void PublishFailure (NSNetService sender, NSDictionary errors);
public virtual void Published (NSNetService sender);
public virtual void ResolveFailure (NSNetService sender, NSDictionary errors);
public virtual void Stopped (NSNetService sender);
public virtual void UpdatedTxtRecordData (NSNetService sender, NSData data);
public virtual void WillPublish (NSNetService sender);
public virtual void WillResolve (NSNetService sender);

Type Changed: Foundation.INSPortDelegate

Added method:

public virtual void MessageReceived (NSPortMessage message);

Type Changed: Foundation.INSProgressReporting

Modified properties:

-public abstract NSProgress Progress { get; }
+public virtual NSProgress Progress { get; }

Type Changed: Foundation.INSStreamDelegate

Added method:

public virtual void HandleEvent (NSStream theStream, NSStreamEvent streamEvent);

Type Changed: Foundation.INSUrlAuthenticationChallengeSender

Modified methods:

-public abstract void CancelAuthenticationChallenge (NSUrlAuthenticationChallenge challenge)
+public virtual void CancelAuthenticationChallenge (NSUrlAuthenticationChallenge challenge)
-public abstract void ContinueWithoutCredential (NSUrlAuthenticationChallenge challenge)
+public virtual void ContinueWithoutCredential (NSUrlAuthenticationChallenge challenge)
-public abstract void UseCredential (NSUrlCredential credential, NSUrlAuthenticationChallenge challenge)
+public virtual void UseCredential (NSUrlCredential credential, NSUrlAuthenticationChallenge challenge)

Added methods:

public virtual void PerformDefaultHandling (NSUrlAuthenticationChallenge challenge);
public virtual void RejectProtectionSpaceAndContinue (NSUrlAuthenticationChallenge challenge);

Type Changed: Foundation.INSUrlConnectionDataDelegate

Added methods:

public virtual void FinishedLoading (NSUrlConnection connection);
public virtual NSInputStream NeedNewBodyStream (NSUrlConnection connection, NSUrlRequest request);
public virtual void ReceivedData (NSUrlConnection connection, NSData data);
public virtual void ReceivedResponse (NSUrlConnection connection, NSUrlResponse response);
public virtual void SentBodyData (NSUrlConnection connection, IntPtr bytesWritten, IntPtr totalBytesWritten, IntPtr totalBytesExpectedToWrite);
public virtual NSCachedUrlResponse WillCacheResponse (NSUrlConnection connection, NSCachedUrlResponse cachedResponse);
public virtual NSUrlRequest WillSendRequest (NSUrlConnection connection, NSUrlRequest request, NSUrlResponse response);

Type Changed: Foundation.INSUrlConnectionDelegate

Added methods:

public virtual bool CanAuthenticateAgainstProtectionSpace (NSUrlConnection connection, NSUrlProtectionSpace protectionSpace);
public virtual void CanceledAuthenticationChallenge (NSUrlConnection connection, NSUrlAuthenticationChallenge challenge);
public virtual bool ConnectionShouldUseCredentialStorage (NSUrlConnection connection);
public virtual void FailedWithError (NSUrlConnection connection, NSError error);
public virtual void ReceivedAuthenticationChallenge (NSUrlConnection connection, NSUrlAuthenticationChallenge challenge);
public virtual void WillSendRequestForAuthenticationChallenge (NSUrlConnection connection, NSUrlAuthenticationChallenge challenge);

Type Changed: Foundation.INSUrlConnectionDownloadDelegate

Modified methods:

-public abstract void FinishedDownloading (NSUrlConnection connection, NSUrl destinationUrl)
+public virtual void FinishedDownloading (NSUrlConnection connection, NSUrl destinationUrl)

Added methods:

public virtual void ResumedDownloading (NSUrlConnection connection, long totalBytesWritten, long expectedTotalBytes);
public virtual void WroteData (NSUrlConnection connection, long bytesWritten, long totalBytesWritten, long expectedTotalBytes);

Type Changed: Foundation.INSUrlProtocolClient

Modified methods:

-public abstract void CachedResponseIsValid (NSUrlProtocol protocol, NSCachedUrlResponse cachedResponse)
+public virtual void CachedResponseIsValid (NSUrlProtocol protocol, NSCachedUrlResponse cachedResponse)
-public abstract void CancelledAuthenticationChallenge (NSUrlProtocol protocol, NSUrlAuthenticationChallenge challenge)
+public virtual void CancelledAuthenticationChallenge (NSUrlProtocol protocol, NSUrlAuthenticationChallenge challenge)
-public abstract void DataLoaded (NSUrlProtocol protocol, NSData data)
+public virtual void DataLoaded (NSUrlProtocol protocol, NSData data)
-public abstract void FailedWithError (NSUrlProtocol protocol, NSError error)
+public virtual void FailedWithError (NSUrlProtocol protocol, NSError error)
-public abstract void FinishedLoading (NSUrlProtocol protocol)
+public virtual void FinishedLoading (NSUrlProtocol protocol)
-public abstract void ReceivedAuthenticationChallenge (NSUrlProtocol protocol, NSUrlAuthenticationChallenge challenge)
+public virtual void ReceivedAuthenticationChallenge (NSUrlProtocol protocol, NSUrlAuthenticationChallenge challenge)
-public abstract void ReceivedResponse (NSUrlProtocol protocol, NSUrlResponse response, NSUrlCacheStoragePolicy policy)
+public virtual void ReceivedResponse (NSUrlProtocol protocol, NSUrlResponse response, NSUrlCacheStoragePolicy policy)
-public abstract void Redirected (NSUrlProtocol protocol, NSUrlRequest redirectedToEequest, NSUrlResponse redirectResponse)
+public virtual void Redirected (NSUrlProtocol protocol, NSUrlRequest redirectedToEequest, NSUrlResponse redirectResponse)

Type Changed: Foundation.INSUrlSessionDataDelegate

Added methods:

public virtual void DidBecomeDownloadTask (NSUrlSession session, NSUrlSessionDataTask dataTask, NSUrlSessionDownloadTask downloadTask);
public virtual void DidBecomeStreamTask (NSUrlSession session, NSUrlSessionDataTask dataTask, NSUrlSessionStreamTask streamTask);
public virtual void DidReceiveData (NSUrlSession session, NSUrlSessionDataTask dataTask, NSData data);
public virtual void DidReceiveResponse (NSUrlSession session, NSUrlSessionDataTask dataTask, NSUrlResponse response, System.Action<NSUrlSessionResponseDisposition> completionHandler);
public virtual void WillCacheResponse (NSUrlSession session, NSUrlSessionDataTask dataTask, NSCachedUrlResponse proposedResponse, System.Action<NSCachedUrlResponse> completionHandler);

Type Changed: Foundation.INSUrlSessionDelegate

Added methods:

public virtual void DidBecomeInvalid (NSUrlSession session, NSError error);
public virtual void DidFinishEventsForBackgroundSession (NSUrlSession session);
public virtual void DidReceiveChallenge (NSUrlSession session, NSUrlAuthenticationChallenge challenge, System.Action<NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);

Type Changed: Foundation.INSUrlSessionDownloadDelegate

Modified methods:

-public abstract void DidFinishDownloading (NSUrlSession session, NSUrlSessionDownloadTask downloadTask, NSUrl location)
+public virtual void DidFinishDownloading (NSUrlSession session, NSUrlSessionDownloadTask downloadTask, NSUrl location)

Added methods:

public virtual void DidResume (NSUrlSession session, NSUrlSessionDownloadTask downloadTask, long resumeFileOffset, long expectedTotalBytes);
public virtual void DidWriteData (NSUrlSession session, NSUrlSessionDownloadTask downloadTask, long bytesWritten, long totalBytesWritten, long totalBytesExpectedToWrite);

Type Changed: Foundation.INSUrlSessionStreamDelegate

Added methods:

public virtual void BetterRouteDiscovered (NSUrlSession session, NSUrlSessionStreamTask streamTask);
public virtual void CompletedTaskCaptureStreams (NSUrlSession session, NSUrlSessionStreamTask streamTask, NSInputStream inputStream, NSOutputStream outputStream);
public virtual void ReadClosed (NSUrlSession session, NSUrlSessionStreamTask streamTask);
public virtual void WriteClosed (NSUrlSession session, NSUrlSessionStreamTask streamTask);

Type Changed: Foundation.INSUrlSessionTaskDelegate

Added methods:

public virtual void DidCompleteWithError (NSUrlSession session, NSUrlSessionTask task, NSError error);
public virtual void DidCreateTask (NSUrlSession session, NSUrlSessionTask task);
public virtual void DidFinishCollectingMetrics (NSUrlSession session, NSUrlSessionTask task, NSUrlSessionTaskMetrics metrics);
public virtual void DidReceiveChallenge (NSUrlSession session, NSUrlSessionTask task, NSUrlAuthenticationChallenge challenge, System.Action<NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);
public virtual void DidReceiveInformationalResponse (NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response);
public virtual void DidSendBodyData (NSUrlSession session, NSUrlSessionTask task, long bytesSent, long totalBytesSent, long totalBytesExpectedToSend);
public virtual void NeedNewBodyStream (NSUrlSession session, NSUrlSessionTask task, System.Action<NSInputStream> completionHandler);
public virtual void NeedNewBodyStream (NSUrlSession session, NSUrlSessionTask task, long offset, System.Action<NSInputStream> completionHandler);
public virtual void TaskIsWaitingForConnectivity (NSUrlSession session, NSUrlSessionTask task);
public virtual void WillBeginDelayedRequest (NSUrlSession session, NSUrlSessionTask task, NSUrlRequest request, System.Action<NSUrlSessionDelayedRequestDisposition,Foundation.NSUrlRequest> completionHandler);
public virtual void WillPerformHttpRedirection (NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response, NSUrlRequest newRequest, System.Action<NSUrlRequest> completionHandler);

Type Changed: Foundation.INSUrlSessionWebSocketDelegate

Added methods:

public virtual void DidClose (NSUrlSession session, NSUrlSessionWebSocketTask webSocketTask, NSUrlSessionWebSocketCloseCode closeCode, NSData reason);
public virtual void DidOpen (NSUrlSession session, NSUrlSessionWebSocketTask webSocketTask, string protocol);

Type Changed: Foundation.INSUserActivityDelegate

Added methods:

public virtual void UserActivityReceivedData (NSUserActivity userActivity, NSInputStream inputStream, NSOutputStream outputStream);
public virtual void UserActivityWasContinued (NSUserActivity userActivity);
public virtual void UserActivityWillSave (NSUserActivity userActivity);

Type Changed: Foundation.INSXpcListenerDelegate

Added method:

public virtual bool ShouldAcceptConnection (NSXpcListener listener, NSXpcConnection newConnection);

Type Changed: Foundation.NSArray

Added method:

public virtual System.Collections.Generic.IEnumerator<NSObject> GetEnumerator ();

Type Changed: Foundation.NSArray`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSAttributedStringDocumentAttributes

Obsoleted properties:

 [Obsolete ("Use 'CharacterEncoding' instead.")]
 public NSStringEncoding? StringEncoding { get; set; }

Added properties:

public NSStringEncoding? CharacterEncoding { get; set; }
public float? CocoaVersion { get; set; }
public NSAttributedStringDocumentAttributes DefaultAttributes { get; set; }
public UIKit.NSTextScalingType? SourceTextScaling { get; set; }
public UIKit.NSTextScalingType? TextScaling { get; set; }

Type Changed: Foundation.NSAttributedStringNameKey

Added values:

InflectionAgreementArgument = 10,
InflectionAgreementConcept = 11,
InflectionReferentConcept = 12,

Type Changed: Foundation.NSBundle

Added property:

public static NSString BundleDidLoadNotification { get; }

Type Changed: Foundation.NSCharacterSet

Added properties:

public static NSCharacterSet UrlFragmentAllowed { get; }
public static NSCharacterSet UrlHostAllowed { get; }
public static NSCharacterSet UrlPasswordAllowed { get; }
public static NSCharacterSet UrlPathAllowed { get; }
public static NSCharacterSet UrlQueryAllowed { get; }
public static NSCharacterSet UrlUserAllowed { get; }

Type Changed: Foundation.NSDataWritingOptions

Added value:

FileProtectionCompleteWhenUserInactive = 1342177280,

Type Changed: Foundation.NSDate

Added property:

public static NSString SystemClockDidChangeNotification { get; }

Type Changed: Foundation.NSError

Added property:

public static NSString NSNetServicesErrorCode { get; }

Type Changed: Foundation.NSFilePresenter

Added method:

public virtual void AccommodatePresentedItemEviction (System.Action<NSError> completionHandler);

Type Changed: Foundation.NSFilePresenter_Extensions

Added method:

public static void AccommodatePresentedItemEviction (this INSFilePresenter This, System.Action<NSError> completionHandler);

Type Changed: Foundation.NSFileProtectionType

Added value:

CompleteWhenUserInactive = 4,

Type Changed: Foundation.NSLocale

Added properties:

public virtual string LanguageIdentifier { get; }
public virtual string RegionCode { get; }

Type Changed: Foundation.NSMorphology

Added properties:

public virtual NSGrammaticalDefiniteness Definiteness { get; set; }
public virtual NSGrammaticalDetermination Determination { get; set; }
public virtual NSGrammaticalCase GrammaticalCase { get; set; }
public virtual NSGrammaticalPerson GrammaticalPerson { get; set; }
public virtual NSGrammaticalPronounType PronounType { get; set; }

Type Changed: Foundation.NSMutableOrderedSet`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSMutableSet`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSNumber

Added methods:

public bool IsEqualTo (NSNumber number);
public virtual bool IsEqualTo (IntPtr number);

Type Changed: Foundation.NSOrderedSet`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSPort

Added property:

public static NSString PortDidBecomeInvalidNotification { get; }

Type Changed: Foundation.NSSet`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSThread

Added properties:

public static NSString ThreadWillExitNotification { get; }
public static NSString WillBecomeMultiThreadedNotification { get; }

Type Changed: Foundation.NSTimeZone

Added property:

public static NSString SystemTimeZoneDidChangeNotification { get; }

Type Changed: Foundation.NSUndoManager

Added properties:

public virtual UIntPtr RedoCount { get; }
public virtual UIntPtr UndoCount { get; }

Type Changed: Foundation.NSUrl

Added properties:

public static NSString DirectoryEntryCountKey { get; }
public static NSString FileProtectionCompleteWhenUserInactive { get; }

Added method:

public static NSUrl FromString (string url, bool encodingInvalidCharacters);

Type Changed: Foundation.NSUrlComponents

Added method:

public static NSUrlComponents FromString (string url, bool encodingInvalidCharacters);

Type Changed: Foundation.NSUrlSession

Added methods:

public virtual NSUrlSessionUploadTask CreateUploadTask (NSData resumeData);
public virtual NSUrlSessionUploadTask CreateUploadTask (NSData resumeData, System.Action<NSData,Foundation.NSUrlResponse,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<NSUrlSessionUploadTaskResumeRequest> CreateUploadTaskAsync (NSData resumeData);
public virtual System.Threading.Tasks.Task<NSUrlSessionUploadTaskResumeRequest> CreateUploadTaskAsync (NSData resumeData, out NSUrlSessionUploadTask result);

Type Changed: Foundation.NSUrlSessionConfiguration

Added property:

public Network.NWProxyConfig[] ProxyConfigurations { get; set; }

Type Changed: Foundation.NSUrlSessionTaskDelegate

Added methods:

public virtual void DidReceiveInformationalResponse (NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response);
public virtual void NeedNewBodyStream (NSUrlSession session, NSUrlSessionTask task, long offset, System.Action<NSInputStream> completionHandler);

Type Changed: Foundation.NSUrlSessionTaskDelegate_Extensions

Added methods:

public static void DidReceiveInformationalResponse (this INSUrlSessionTaskDelegate This, NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response);
public static void NeedNewBodyStream (this INSUrlSessionTaskDelegate This, NSUrlSession session, NSUrlSessionTask task, long offset, System.Action<NSInputStream> completionHandler);

Type Changed: Foundation.NSUrlSessionUploadTask

Added property:

public static NSString ResumeDataKey { get; }

Added methods:

public virtual void CancelByProducingResumeData (System.Action<NSData> completionHandler);
public virtual System.Threading.Tasks.Task<NSData> CancelByProducingResumeDataAsync ();

Type Changed: Foundation.ProtocolAttribute

Added property:

public bool BackwardsCompatibleCodeGeneration { get; set; }

New Type: Foundation.NSExceptionError

public sealed class NSExceptionError : Foundation.NSError {
	// constructors
	public NSExceptionError (System.Exception exception);
	// properties
	public System.Exception Exception { get; }
}

New Type: Foundation.NSGrammaticalCase

[Serializable]
public enum NSGrammaticalCase {
	Ablative = 6,
	Accusative = 2,
	Adessive = 7,
	Allative = 8,
	Dative = 3,
	Elative = 9,
	Essive = 11,
	Genitive = 4,
	Illative = 10,
	Inessive = 12,
	Locative = 13,
	Nominative = 1,
	NotSet = 0,
	Prepositional = 5,
	Translative = 14,
}

New Type: Foundation.NSGrammaticalDefiniteness

[Serializable]
public enum NSGrammaticalDefiniteness {
	Definite = 2,
	Indefinite = 1,
	NotSet = 0,
}

New Type: Foundation.NSGrammaticalDetermination

[Serializable]
public enum NSGrammaticalDetermination {
	Dependent = 2,
	Independent = 1,
	NotSet = 0,
}

New Type: Foundation.NSGrammaticalPerson

[Serializable]
public enum NSGrammaticalPerson {
	First = 1,
	NotSet = 0,
	Second = 2,
	Third = 3,
}

New Type: Foundation.NSGrammaticalPronounType

[Serializable]
public enum NSGrammaticalPronounType {
	NotSet = 0,
	Personal = 1,
	Possessive = 3,
	Reflexive = 2,
}

New Type: Foundation.NSMorphologyPronoun

public class NSMorphologyPronoun : Foundation.NSObject, INSCoding, INSCopying, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NSMorphologyPronoun (NSCoder coder);
	protected NSMorphologyPronoun (NSObjectFlag t);
	protected NSMorphologyPronoun (ObjCRuntime.NativeHandle handle);
	public NSMorphologyPronoun (string pronoun, NSMorphology morphology, NSMorphology dependentMorphology);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual NSMorphology DependentMorphology { get; }
	public virtual NSMorphology Morphology { get; }
	public virtual string Pronoun { get; }
	// methods
	public virtual NSObject Copy (NSZone zone);
	public virtual void EncodeTo (NSCoder encoder);
}

New Type: Foundation.NSTermOfAddress

public class NSTermOfAddress : Foundation.NSObject, INSCoding, INSCopying, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NSTermOfAddress (NSCoder coder);
	protected NSTermOfAddress (NSObjectFlag t);
	protected NSTermOfAddress (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static NSTermOfAddress Feminine { get; }
	public virtual string LanguageIdentifier { get; }
	public static NSTermOfAddress Masculine { get; }
	public static NSTermOfAddress Neutral { get; }
	public virtual NSMorphologyPronoun[] Pronouns { get; }
	// methods
	public virtual NSObject Copy (NSZone zone);
	public virtual void EncodeTo (NSCoder encoder);
	public static NSTermOfAddress GetLocalized (string language, NSMorphologyPronoun[] pronouns);
}

New Type: Foundation.NSUrlSessionUploadTaskResumeRequest

public class NSUrlSessionUploadTaskResumeRequest {
	// constructors
	public NSUrlSessionUploadTaskResumeRequest (NSData arg1, NSUrlResponse arg2);
	// properties
	public NSData Arg1 { get; set; }
	public NSUrlResponse Arg2 { get; set; }
}

New Type: Foundation.OptionalMemberAttribute

public sealed class OptionalMemberAttribute : System.Attribute {
	// constructors
	public OptionalMemberAttribute ();
}

New Type: Foundation.RequiredMemberAttribute

public sealed class RequiredMemberAttribute : System.Attribute {
	// constructors
	public RequiredMemberAttribute ();
}

Namespace GLKit

Type Changed: GLKit.IGLKNamedEffect

Modified methods:

-public abstract void PrepareToDraw ()
+public virtual void PrepareToDraw ()

Type Changed: GLKit.IGLKViewControllerDelegate

Modified methods:

-public abstract void Update (GLKViewController controller)
+public virtual void Update (GLKViewController controller)

Added method:

public virtual void WillPause (GLKViewController controller, bool pause);

Type Changed: GLKit.IGLKViewDelegate

Modified methods:

-public abstract void DrawInRect (GLKView view, CoreGraphics.CGRect rect)
+public virtual void DrawInRect (GLKView view, CoreGraphics.CGRect rect)

Namespace GameController

Type Changed: GameController.GCVirtualControllerConfiguration

Added property:

public virtual bool Hidden { get; set; }

Type Changed: GameController.IGCAxisElement

Modified properties:

-public abstract IGCAxisInput AbsoluteInput { get; }
+public virtual IGCAxisInput AbsoluteInput { get; }
-public abstract IGCRelativeInput RelativeInput { get; }
+public virtual IGCRelativeInput RelativeInput { get; }

Type Changed: GameController.IGCAxisInput

Modified properties:

-public abstract bool Analog { get; }
+public virtual bool Analog { get; }
-public abstract bool CanWrap { get; }
+public virtual bool CanWrap { get; }
-public abstract double LastValueLatency { get; }
+public virtual double LastValueLatency { get; }
-public abstract double LastValueTimestamp { get; }
+public virtual double LastValueTimestamp { get; }
-public abstract float Value { get; }
+public virtual float Value { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCAxisInput,System.Single%GREATERTHANREPLACEMENT% ValueDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCAxisInput,System.Single%GREATERTHANREPLACEMENT% ValueDidChangeHandler { get; set; }

Type Changed: GameController.IGCButtonElement

Modified properties:

-public abstract Foundation.NSObject PressedInput { get; }
+public virtual Foundation.NSObject PressedInput { get; }
-public abstract IGCTouchedStateInput TouchedInput { get; }
+public virtual IGCTouchedStateInput TouchedInput { get; }

Type Changed: GameController.IGCDevice

Modified properties:

-public abstract CoreFoundation.DispatchQueue HandlerQueue { get; set; }
+public virtual CoreFoundation.DispatchQueue HandlerQueue { get; set; }
-public abstract GCPhysicalInputProfile PhysicalInputProfile { get; }
+public virtual GCPhysicalInputProfile PhysicalInputProfile { get; }
-public abstract string ProductCategory { get; }
+public virtual string ProductCategory { get; }
-public abstract string VendorName { get; }
+public virtual string VendorName { get; }

Type Changed: GameController.IGCDevicePhysicalInput

Modified properties:

-public abstract IGCDevicePhysicalInputState Capture { get; }
+public virtual IGCDevicePhysicalInputState Capture { get; }
-public abstract IGCDevice Device { get; }
+public virtual IGCDevice Device { get; }
-public abstract ElementValueDidChangeHandler ElementValueDidChangeHandler { get; set; }
+public virtual ElementValueDidChangeHandler ElementValueDidChangeHandler { get; set; }
-public abstract InputStateAvailableHandler InputStateAvailableHandler { get; set; }
+public virtual InputStateAvailableHandler InputStateAvailableHandler { get; set; }
-public abstract IntPtr InputStateQueueDepth { get; set; }
+public virtual IntPtr InputStateQueueDepth { get; set; }
-public abstract Foundation.NSObject NextInputState { get; }
+public virtual Foundation.NSObject NextInputState { get; }

Type Changed: GameController.IGCDevicePhysicalInputState

Modified properties:

-public abstract IGCDevice Device { get; }
+public virtual IGCDevice Device { get; }
-public abstract double LastEventLatency { get; }
+public virtual double LastEventLatency { get; }
-public abstract double LastEventTimestamp { get; }
+public virtual double LastEventTimestamp { get; }

Modified methods:

-public abstract IGCPhysicalInputElement GetObject (string key)
+public virtual IGCPhysicalInputElement GetObject (string key)

Type Changed: GameController.IGCDevicePhysicalInputStateDiff

Modified properties:

-public abstract Foundation.NSEnumerator%LESSERTHANREPLACEMENT%IGCPhysicalInputElement%GREATERTHANREPLACEMENT% ChangedElements { get; }
+public virtual Foundation.NSEnumerator%LESSERTHANREPLACEMENT%IGCPhysicalInputElement%GREATERTHANREPLACEMENT% ChangedElements { get; }

Modified methods:

-public abstract GCDevicePhysicalInputElementChange GetChange (IGCPhysicalInputElement element)
+public virtual GCDevicePhysicalInputElementChange GetChange (IGCPhysicalInputElement element)

Type Changed: GameController.IGCDirectionPadElement

Modified properties:

-public abstract Foundation.NSObject Down { get; }
+public virtual Foundation.NSObject Down { get; }
-public abstract Foundation.NSObject Left { get; }
+public virtual Foundation.NSObject Left { get; }
-public abstract Foundation.NSObject Right { get; }
+public virtual Foundation.NSObject Right { get; }
-public abstract Foundation.NSObject Up { get; }
+public virtual Foundation.NSObject Up { get; }
-public abstract IGCAxisInput XAxis { get; }
+public virtual IGCAxisInput XAxis { get; }
-public abstract IGCAxisInput YAxis { get; }
+public virtual IGCAxisInput YAxis { get; }

Type Changed: GameController.IGCLinearInput

Modified properties:

-public abstract bool Analog { get; }
+public virtual bool Analog { get; }
-public abstract bool CanWrap { get; }
+public virtual bool CanWrap { get; }
-public abstract double LastValueLatency { get; }
+public virtual double LastValueLatency { get; }
-public abstract double LastValueTimestamp { get; }
+public virtual double LastValueTimestamp { get; }
-public abstract float Value { get; }
+public virtual float Value { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCLinearInput,System.Single%GREATERTHANREPLACEMENT% ValueDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCLinearInput,System.Single%GREATERTHANREPLACEMENT% ValueDidChangeHandler { get; set; }

Type Changed: GameController.IGCPhysicalInputElement

Modified properties:

-public abstract Foundation.NSSet%LESSERTHANREPLACEMENT%Foundation.NSString%GREATERTHANREPLACEMENT% Aliases { get; }
+public virtual Foundation.NSSet%LESSERTHANREPLACEMENT%Foundation.NSString%GREATERTHANREPLACEMENT% Aliases { get; }
-public abstract string LocalizedName { get; }
+public virtual string LocalizedName { get; }
-public abstract string SfSymbolsName { get; }
+public virtual string SfSymbolsName { get; }

Type Changed: GameController.IGCPressedStateInput

Modified properties:

-public abstract double LastPressedStateLatency { get; }
+public virtual double LastPressedStateLatency { get; }
-public abstract double LastPressedStateTimestamp { get; }
+public virtual double LastPressedStateTimestamp { get; }
-public abstract bool Pressed { get; }
+public virtual bool Pressed { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCPressedStateInput,System.Boolean%GREATERTHANREPLACEMENT% PressedDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCPressedStateInput,System.Boolean%GREATERTHANREPLACEMENT% PressedDidChangeHandler { get; set; }

Type Changed: GameController.IGCRelativeInput

Modified properties:

-public abstract bool Analog { get; }
+public virtual bool Analog { get; }
-public abstract float Delta { get; }
+public virtual float Delta { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCRelativeInput,System.Single%GREATERTHANREPLACEMENT% DeltaDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCRelativeInput,System.Single%GREATERTHANREPLACEMENT% DeltaDidChangeHandler { get; set; }
-public abstract double LastDeltaLatency { get; }
+public virtual double LastDeltaLatency { get; }
-public abstract double LastDeltaTimestamp { get; }
+public virtual double LastDeltaTimestamp { get; }

Type Changed: GameController.IGCSwitchElement

Modified properties:

-public abstract IGCSwitchPositionInput PositionInput { get; }
+public virtual IGCSwitchPositionInput PositionInput { get; }

Type Changed: GameController.IGCSwitchPositionInput

Modified properties:

-public abstract bool CanWrap { get; }
+public virtual bool CanWrap { get; }
-public abstract double LastPositionLatency { get; }
+public virtual double LastPositionLatency { get; }
-public abstract double LastPositionTimestamp { get; }
+public virtual double LastPositionTimestamp { get; }
-public abstract IntPtr Position { get; }
+public virtual IntPtr Position { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCSwitchPositionInput,System.IntPtr%GREATERTHANREPLACEMENT% PositionDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCSwitchPositionInput,System.IntPtr%GREATERTHANREPLACEMENT% PositionDidChangeHandler { get; set; }
-public abstract Foundation.NSRange PositionRange { get; }
+public virtual Foundation.NSRange PositionRange { get; }
-public abstract bool Sequential { get; }
+public virtual bool Sequential { get; }

Type Changed: GameController.IGCTouchedStateInput

Modified properties:

-public abstract double LastTouchedStateLatency { get; }
+public virtual double LastTouchedStateLatency { get; }
-public abstract double LastTouchedStateTimestamp { get; }
+public virtual double LastTouchedStateTimestamp { get; }
-public abstract bool Touched { get; }
+public virtual bool Touched { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCTouchedStateInput,System.Boolean%GREATERTHANREPLACEMENT% TouchedDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCTouchedStateInput,System.Boolean%GREATERTHANREPLACEMENT% TouchedDidChangeHandler { get; set; }

Namespace GameKit

Type Changed: GameKit.GKAchievement

Added methods:

public virtual UIKit.UIViewController ChallengeComposeControllerWithMessage (string message, GKPlayer[] players, GKChallengeComposeHandler2 completionHandler);
public virtual System.Threading.Tasks.Task<GKChallengeComposeControllerResult> ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players);
public virtual System.Threading.Tasks.Task<GKChallengeComposeControllerResult> ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players, out UIKit.UIViewController result);

Type Changed: GameKit.GKAchievementDescription

Added property:

public virtual Foundation.NSNumber RarityPercent { get; }

Type Changed: GameKit.GKError

Added value:

AppUnlisted = 37,

Type Changed: GameKit.GKLeaderboardEntry

Added methods:

public virtual UIKit.UIViewController ChallengeComposeControllerWithMessage (string message, GKPlayer[] players, GKChallengeComposeHandler2 completionHandler);
public virtual System.Threading.Tasks.Task<GKChallengeComposeControllerResult> ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players);
public virtual System.Threading.Tasks.Task<GKChallengeComposeControllerResult> ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players, out UIKit.UIViewController result);

Type Changed: GameKit.GKScoreChallenge

Added property:

public virtual GKLeaderboardEntry LeaderboardEntry { get; }

Type Changed: GameKit.GKVoiceChat

Added property:

public virtual System.Action<GKPlayer,GameKit.GKVoiceChatPlayerState> PlayerVoiceChatStateDidChangeHandler { get; }

Type Changed: GameKit.IGKAchievementViewControllerDelegate

Modified methods:

-public abstract void DidFinish (GKAchievementViewController viewController)
+public virtual void DidFinish (GKAchievementViewController viewController)

Type Changed: GameKit.IGKChallengeEventHandlerDelegate

Added methods:

public virtual void LocalPlayerCompletedChallenge (GKChallenge challenge);
public virtual void LocalPlayerReceivedChallenge (GKChallenge challenge);
public virtual void LocalPlayerSelectedChallenge (GKChallenge challenge);
public virtual void RemotePlayerCompletedChallenge (GKChallenge challenge);
public virtual bool ShouldShowBannerForLocallyCompletedChallenge (GKChallenge challenge);
public virtual bool ShouldShowBannerForLocallyReceivedChallenge (GKChallenge challenge);
public virtual bool ShouldShowBannerForRemotelyCompletedChallenge (GKChallenge challenge);

Type Changed: GameKit.IGKChallengeListener

Added methods:

public virtual void DidCompleteChallenge (GKPlayer player, GKChallenge challenge, GKPlayer friendPlayer);
public virtual void DidReceiveChallenge (GKPlayer player, GKChallenge challenge);
public virtual void IssuedChallengeWasCompleted (GKPlayer player, GKChallenge challenge, GKPlayer friendPlayer);
public virtual void WantsToPlayChallenge (GKPlayer player, GKChallenge challenge);

Type Changed: GameKit.IGKFriendRequestComposeViewControllerDelegate

Modified methods:

-public abstract void DidFinish (GKFriendRequestComposeViewController viewController)
+public virtual void DidFinish (GKFriendRequestComposeViewController viewController)

Type Changed: GameKit.IGKGameCenterControllerDelegate

Modified methods:

-public abstract void Finished (GKGameCenterViewController controller)
+public virtual void Finished (GKGameCenterViewController controller)

Type Changed: GameKit.IGKGameSessionEventListener

Added methods:

public virtual void DidAddPlayer (GKGameSession session, GKCloudPlayer player);
public virtual void DidChangeConnectionState (GKGameSession session, GKCloudPlayer player, GKConnectionState newState);
public virtual void DidReceiveData (GKGameSession session, Foundation.NSData data, GKCloudPlayer player);
public virtual void DidReceiveMessage (GKGameSession session, string message, Foundation.NSData data, GKCloudPlayer player);
public virtual void DidRemovePlayer (GKGameSession session, GKCloudPlayer player);
public virtual void DidSaveData (GKGameSession session, GKCloudPlayer player, Foundation.NSData data);

Type Changed: GameKit.IGKInviteEventListener

Added methods:

public virtual void DidAcceptInvite (GKPlayer player, GKInvite invite);
public virtual void DidRequestMatch (GKPlayer player, GKPlayer[] recipientPlayers);
public virtual void DidRequestMatch (GKPlayer player, string[] playerIDs);

Type Changed: GameKit.IGKLeaderboardViewControllerDelegate

Modified methods:

-public abstract void DidFinish (GKLeaderboardViewController viewController)
+public virtual void DidFinish (GKLeaderboardViewController viewController)

Type Changed: GameKit.IGKMatchDelegate

Added methods:

public virtual void DataReceived (GKMatch match, Foundation.NSData data, string playerId);
public virtual void DataReceivedForRecipient (GKMatch match, Foundation.NSData data, GKPlayer recipient, GKPlayer player);
public virtual void DataReceivedFromPlayer (GKMatch match, Foundation.NSData data, GKPlayer player);
public virtual void Failed (GKMatch match, Foundation.NSError error);
public virtual bool ShouldReinviteDisconnectedPlayer (GKMatch match, GKPlayer player);
public virtual bool ShouldReinvitePlayer (GKMatch match, string playerId);
public virtual void StateChanged (GKMatch match, string playerId, GKPlayerConnectionState state);
public virtual void StateChangedForPlayer (GKMatch match, GKPlayer player, GKPlayerConnectionState state);

Type Changed: GameKit.IGKMatchmakerViewControllerDelegate

Modified methods:

-public abstract void DidFailWithError (GKMatchmakerViewController viewController, Foundation.NSError error)
+public virtual void DidFailWithError (GKMatchmakerViewController viewController, Foundation.NSError error)
-public abstract void WasCancelled (GKMatchmakerViewController viewController)
+public virtual void WasCancelled (GKMatchmakerViewController viewController)

Added methods:

public virtual void DidFindHostedPlayers (GKMatchmakerViewController viewController, GKPlayer[] playerIDs);
public virtual void DidFindMatch (GKMatchmakerViewController viewController, GKMatch match);
public virtual void DidFindPlayers (GKMatchmakerViewController viewController, string[] playerIDs);
public virtual void GetMatchProperties (GKMatchmakerViewController viewController, GKPlayer recipient, System.Action<Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject>> completionHandler);
public virtual void HostedPlayerDidAccept (GKMatchmakerViewController viewController, GKPlayer playerID);
public virtual void ReceivedAcceptFromHostedPlayer (GKMatchmakerViewController viewController, string playerID);

Type Changed: GameKit.IGKSavedGameListener

Added methods:

public virtual void DidModifySavedGame (GKPlayer player, GKSavedGame savedGame);
public virtual void HasConflictingSavedGames (GKPlayer player, GKSavedGame[] savedGames);

Type Changed: GameKit.IGKSessionDelegate

Added methods:

public virtual void FailedWithError (GKSession session, Foundation.NSError error);
public virtual void PeerChangedState (GKSession session, string peerID, GKPeerConnectionState state);
public virtual void PeerConnectionFailed (GKSession session, string peerID, Foundation.NSError error);
public virtual void PeerConnectionRequest (GKSession session, string peerID);

Type Changed: GameKit.IGKTurnBasedEventHandlerDelegate

Modified methods:

-public abstract void HandleInviteFromGameCenter (Foundation.NSString[] playersToInvite)
+public virtual void HandleInviteFromGameCenter (Foundation.NSString[] playersToInvite)
-public abstract void HandleTurnEvent (GKTurnBasedMatch match, bool activated)
+public virtual void HandleTurnEvent (GKTurnBasedMatch match, bool activated)

Added methods:

public virtual void HandleMatchEnded (GKTurnBasedMatch match);
public virtual void HandleTurnEventForMatch (GKTurnBasedMatch match);

Type Changed: GameKit.IGKTurnBasedEventListener

Added methods:

public virtual void DidRequestMatchWithOtherPlayers (GKPlayer player, GKPlayer[] playersToInvite);
public virtual void DidRequestMatchWithPlayers (GKPlayer player, string[] playerIDsToInvite);
public virtual void MatchEnded (GKPlayer player, GKTurnBasedMatch match);
public virtual void ReceivedExchangeCancellation (GKPlayer player, GKTurnBasedExchange exchange, GKTurnBasedMatch match);
public virtual void ReceivedExchangeReplies (GKPlayer player, GKTurnBasedExchangeReply[] replies, GKTurnBasedExchange exchange, GKTurnBasedMatch match);
public virtual void ReceivedExchangeRequest (GKPlayer player, GKTurnBasedExchange exchange, GKTurnBasedMatch match);
public virtual void ReceivedTurnEvent (GKPlayer player, GKTurnBasedMatch match, bool becameActive);
public virtual void WantsToQuitMatch (GKPlayer player, GKTurnBasedMatch match);

Type Changed: GameKit.IGKTurnBasedMatchmakerViewControllerDelegate

Modified methods:

-public abstract void FailedWithError (GKTurnBasedMatchmakerViewController viewController, Foundation.NSError error)
+public virtual void FailedWithError (GKTurnBasedMatchmakerViewController viewController, Foundation.NSError error)
-public abstract void WasCancelled (GKTurnBasedMatchmakerViewController viewController)
+public virtual void WasCancelled (GKTurnBasedMatchmakerViewController viewController)

Added methods:

public virtual void FoundMatch (GKTurnBasedMatchmakerViewController viewController, GKTurnBasedMatch match);
public virtual void PlayerQuitForMatch (GKTurnBasedMatchmakerViewController viewController, GKTurnBasedMatch match);

Type Changed: GameKit.IGKVoiceChatClient

Modified methods:

-public abstract string ParticipantID ()
+public virtual string ParticipantID ()
-public abstract void SendData (GKVoiceChatService voiceChatService, Foundation.NSData data, string toParticipant)
+public virtual void SendData (GKVoiceChatService voiceChatService, Foundation.NSData data, string toParticipant)

Added methods:

public virtual void FailedToConnect (GKVoiceChatService voiceChatService, string participantID, Foundation.NSError error);
public virtual void ReceivedInvitation (GKVoiceChatService voiceChatService, string participantID, IntPtr callID);
public virtual void SendRealTimeData (GKVoiceChatService voiceChatService, Foundation.NSData data, string participantID);
public virtual void Started (GKVoiceChatService voiceChatService, string participantID);
public virtual void Stopped (GKVoiceChatService voiceChatService, string participantID, Foundation.NSError error);

New Type: GameKit.GKChallengeComposeControllerResult

public class GKChallengeComposeControllerResult {
	// constructors
	public GKChallengeComposeControllerResult (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers);
	// properties
	public UIKit.UIViewController ComposeController { get; set; }
	public bool IssuedChallenge { get; set; }
	public GKPlayer[] SentPlayers { get; set; }
}

New Type: GameKit.GKChallengeComposeHandler2

public sealed delegate GKChallengeComposeHandler2 : System.MulticastDelegate {
	// constructors
	public GKChallengeComposeHandler2 (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers);
}

Namespace GameplayKit

Type Changed: GameplayKit.IGKAgentDelegate

Added methods:

public virtual void AgentDidUpdate (GKAgent agent);
public virtual void AgentWillUpdate (GKAgent agent);

Type Changed: GameplayKit.IGKGameModel

Modified methods:

-public abstract void ApplyGameModelUpdate (IGKGameModelUpdate gameModelUpdate)
+public virtual void ApplyGameModelUpdate (IGKGameModelUpdate gameModelUpdate)
-public abstract IGKGameModelPlayer GetActivePlayer ()
+public virtual IGKGameModelPlayer GetActivePlayer ()
-public abstract IGKGameModelUpdate[] GetGameModelUpdates (IGKGameModelPlayer player)
+public virtual IGKGameModelUpdate[] GetGameModelUpdates (IGKGameModelPlayer player)
-public abstract IGKGameModelPlayer[] GetPlayers ()
+public virtual IGKGameModelPlayer[] GetPlayers ()
-public abstract void SetGameModel (IGKGameModel gameModel)
+public virtual void SetGameModel (IGKGameModel gameModel)

Added methods:

public virtual IntPtr GetScore (IGKGameModelPlayer player);
public virtual bool IsLoss (IGKGameModelPlayer player);
public virtual bool IsWin (IGKGameModelPlayer player);
public virtual void UnapplyGameModelUpdate (IGKGameModelUpdate gameModelUpdate);

Type Changed: GameplayKit.IGKGameModelPlayer

Modified properties:

-public abstract IntPtr PlayerId { get; }
+public virtual IntPtr PlayerId { get; }

Type Changed: GameplayKit.IGKGameModelUpdate

Modified properties:

-public abstract IntPtr Value { get; set; }
+public virtual IntPtr Value { get; set; }

Type Changed: GameplayKit.IGKRandom

Modified methods:

-public abstract bool GetNextBool ()
+public virtual bool GetNextBool ()
-public abstract IntPtr GetNextInt ()
+public virtual IntPtr GetNextInt ()
-public abstract UIntPtr GetNextInt (UIntPtr upperBound)
+public virtual UIntPtr GetNextInt (UIntPtr upperBound)
-public abstract float GetNextUniform ()
+public virtual float GetNextUniform ()

Type Changed: GameplayKit.IGKStrategist

Modified properties:

-public abstract IGKGameModel GameModel { get; set; }
+public virtual IGKGameModel GameModel { get; set; }
-public abstract IGKRandom RandomSource { get; set; }
+public virtual IGKRandom RandomSource { get; set; }

Modified methods:

-public abstract IGKGameModelUpdate GetBestMoveForActivePlayer ()
+public virtual IGKGameModelUpdate GetBestMoveForActivePlayer ()

Namespace HealthKit

Type Changed: HealthKit.IHKWorkoutSessionDelegate

Modified methods:

-public abstract void DidChangeToState (HKWorkoutSession workoutSession, HKWorkoutSessionState toState, HKWorkoutSessionState fromState, Foundation.NSDate date)
+public virtual void DidChangeToState (HKWorkoutSession workoutSession, HKWorkoutSessionState toState, HKWorkoutSessionState fromState, Foundation.NSDate date)
-public abstract void DidFail (HKWorkoutSession workoutSession, Foundation.NSError error)
+public virtual void DidFail (HKWorkoutSession workoutSession, Foundation.NSError error)

Added methods:

public virtual void DidBeginActivity (HKWorkoutSession workoutSession, HKWorkoutConfiguration workoutConfiguration, Foundation.NSDate date);
public virtual void DidDisconnect (HKWorkoutSession workoutSession, Foundation.NSError error);
public virtual void DidEndActivity (HKWorkoutSession workoutSession, HKWorkoutConfiguration workoutConfiguration, Foundation.NSDate date);
public virtual void DidGenerateEvent (HKWorkoutSession workoutSession, HKWorkoutEvent event);
public virtual void DidReceiveData (HKWorkoutSession workoutSession, Foundation.NSData[] data);

Namespace HomeKit

Type Changed: HomeKit.HMError

Added value:

PartialCommunicationFailure = 104,

Type Changed: HomeKit.IHMAccessoryBrowserDelegate

Added methods:

public virtual void DidFindNewAccessory (HMAccessoryBrowser browser, HMAccessory accessory);
public virtual void DidRemoveNewAccessory (HMAccessoryBrowser browser, HMAccessory accessory);

Type Changed: HomeKit.IHMAccessoryDelegate

Added methods:

public virtual void DidAddProfile (HMAccessory accessory, HMAccessoryProfile profile);
public virtual void DidRemoveProfile (HMAccessory accessory, HMAccessoryProfile profile);
public virtual void DidUpdateAssociatedServiceType (HMAccessory accessory, HMService service);
public virtual void DidUpdateFirmwareVersion (HMAccessory accessory, string firmwareVersion);
public virtual void DidUpdateName (HMAccessory accessory);
public virtual void DidUpdateNameForService (HMAccessory accessory, HMService service);
public virtual void DidUpdateReachability (HMAccessory accessory);
public virtual void DidUpdateServices (HMAccessory accessory);
public virtual void DidUpdateValueForCharacteristic (HMAccessory accessory, HMService service, HMCharacteristic characteristic);

Type Changed: HomeKit.IHMCameraSnapshotControlDelegate

Added methods:

public virtual void DidTakeSnapshot (HMCameraSnapshotControl cameraSnapshotControl, HMCameraSnapshot snapshot, Foundation.NSError error);
public virtual void DidUpdateMostRecentSnapshot (HMCameraSnapshotControl cameraSnapshotControl);

Type Changed: HomeKit.IHMCameraStreamControlDelegate

Added methods:

public virtual void DidStartStream (HMCameraStreamControl cameraStreamControl);
public virtual void DidStopStream (HMCameraStreamControl cameraStreamControl, Foundation.NSError error);

Type Changed: HomeKit.IHMHomeDelegate

Added methods:

public virtual void DidAddAccessory (HMHome home, HMAccessory accessory);
public virtual void DidAddActionSet (HMHome home, HMActionSet actionSet);
public virtual void DidAddRoom (HMHome home, HMRoom room);
public virtual void DidAddRoomToZone (HMHome home, HMRoom room, HMZone zone);
public virtual void DidAddService (HMHome home, HMService service, HMServiceGroup group);
public virtual void DidAddServiceGroup (HMHome home, HMServiceGroup group);
public virtual void DidAddTrigger (HMHome home, HMTrigger trigger);
public virtual void DidAddUser (HMHome home, HMUser user);
public virtual void DidAddZone (HMHome home, HMZone zone);
public virtual void DidEncounterError (HMHome home, Foundation.NSError error, HMAccessory accessory);
public virtual void DidRemoveAccessory (HMHome home, HMAccessory accessory);
public virtual void DidRemoveActionSet (HMHome home, HMActionSet actionSet);
public virtual void DidRemoveRoom (HMHome home, HMRoom room);
public virtual void DidRemoveRoomFromZone (HMHome home, HMRoom room, HMZone zone);
public virtual void DidRemoveService (HMHome home, HMService service, HMServiceGroup group);
public virtual void DidRemoveServiceGroup (HMHome home, HMServiceGroup group);
public virtual void DidRemoveTrigger (HMHome home, HMTrigger trigger);
public virtual void DidRemoveUser (HMHome home, HMUser user);
public virtual void DidRemoveZone (HMHome home, HMZone zone);
public virtual void DidUnblockAccessory (HMHome home, HMAccessory accessory);
public virtual void DidUpdateAccessControlForCurrentUser (HMHome home);
public virtual void DidUpdateActionsForActionSet (HMHome home, HMActionSet actionSet);
public virtual void DidUpdateHomeHubState (HMHome home, HMHomeHubState homeHubState);
public virtual void DidUpdateNameForActionSet (HMHome home, HMActionSet actionSet);
public virtual void DidUpdateNameForHome (HMHome home);
public virtual void DidUpdateNameForRoom (HMHome home, HMRoom room);
public virtual void DidUpdateNameForServiceGroup (HMHome home, HMServiceGroup group);
public virtual void DidUpdateNameForTrigger (HMHome home, HMTrigger trigger);
public virtual void DidUpdateNameForZone (HMHome home, HMZone zone);
public virtual void DidUpdateRoom (HMHome home, HMRoom room, HMAccessory accessory);
public virtual void DidUpdateSupportedFeatures (HMHome home);
public virtual void DidUpdateTrigger (HMHome home, HMTrigger trigger);

Type Changed: HomeKit.IHMHomeManagerDelegate

Added methods:

public virtual void DidAddHome (HMHomeManager manager, HMHome home);
public virtual void DidReceiveAddAccessoryRequest (HMHomeManager manager, HMAddAccessoryRequest request);
public virtual void DidRemoveHome (HMHomeManager manager, HMHome home);
public virtual void DidUpdateAuthorizationStatus (HMHomeManager manager, HMHomeManagerAuthorizationStatus status);
public virtual void DidUpdateHomes (HMHomeManager manager);
public virtual void DidUpdatePrimaryHome (HMHomeManager manager);

Type Changed: HomeKit.IHMNetworkConfigurationProfileDelegate

Added method:

public virtual void DidUpdateNetworkAccessMode (HMNetworkConfigurationProfile profile);

Namespace IdentityLookup

Type Changed: IdentityLookup.IILMessageFilterCapabilitiesQueryHandling

Modified methods:

-public abstract void HandleQueryRequest (ILMessageFilterCapabilitiesQueryRequest capabilitiesQueryRequest, ILMessageFilterExtensionContext context, System.Action%LESSERTHANREPLACEMENT%ILMessageFilterCapabilitiesQueryResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleQueryRequest (ILMessageFilterCapabilitiesQueryRequest capabilitiesQueryRequest, ILMessageFilterExtensionContext context, System.Action%LESSERTHANREPLACEMENT%ILMessageFilterCapabilitiesQueryResponse%GREATERTHANREPLACEMENT% completion)

Type Changed: IdentityLookup.IILMessageFilterQueryHandling

Modified methods:

-public abstract void HandleQueryRequest (ILMessageFilterQueryRequest queryRequest, ILMessageFilterExtensionContext context, System.Action%LESSERTHANREPLACEMENT%ILMessageFilterQueryResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleQueryRequest (ILMessageFilterQueryRequest queryRequest, ILMessageFilterExtensionContext context, System.Action%LESSERTHANREPLACEMENT%ILMessageFilterQueryResponse%GREATERTHANREPLACEMENT% completion)

Namespace ImageIO

Type Changed: ImageIO.CGImageProperties

Added properties:

public static Foundation.NSString TIFFXPosition { get; }
public static Foundation.NSString TIFFYPosition { get; }

Type Changed: ImageIO.CGImageSource

Added method:

public static void SetAllowableTypes (string[] allowableTypes);

Namespace Intents

Type Changed: Intents.IINActivateCarSignalIntentHandling

Modified methods:

-public abstract void HandleActivateCarSignal (INActivateCarSignalIntent intent, System.Action%LESSERTHANREPLACEMENT%INActivateCarSignalIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleActivateCarSignal (INActivateCarSignalIntent intent, System.Action%LESSERTHANREPLACEMENT%INActivateCarSignalIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INActivateCarSignalIntent intent, System.Action<INActivateCarSignalIntentResponse> completion);
public virtual void ResolveCarName (INActivateCarSignalIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveSignals (INActivateCarSignalIntent intent, System.Action<INCarSignalOptionsResolutionResult> completion);

Type Changed: Intents.IINAddMediaIntentHandling

Modified methods:

-public abstract void HandleAddMedia (INAddMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INAddMediaIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAddMedia (INAddMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INAddMediaIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INAddMediaIntent intent, System.Action<INAddMediaIntentResponse> completion);
public virtual void ResolveMediaDestination (INAddMediaIntent intent, System.Action<INAddMediaMediaDestinationResolutionResult> completion);
public virtual void ResolveMediaItems (INAddMediaIntent intent, System.Action<INAddMediaMediaItemResolutionResult[]> completion);

Type Changed: Intents.IINAddTasksIntentHandling

Modified methods:

-public abstract void HandleAddTasks (INAddTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INAddTasksIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAddTasks (INAddTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INAddTasksIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INAddTasksIntent intent, System.Action<INAddTasksIntentResponse> completion);
public virtual void ResolvePriority (INAddTasksIntent intent, System.Action<INTaskPriorityResolutionResult> completion);
public virtual void ResolveSpatialEventTrigger (INAddTasksIntent intent, System.Action<INSpatialEventTriggerResolutionResult> completion);
public virtual void ResolveTargetTaskList (INAddTasksIntent intent, System.Action<INAddTasksTargetTaskListResolutionResult> completionHandler);
public virtual void ResolveTargetTaskList (INAddTasksIntent intent, System.Action<INTaskListResolutionResult> completion);
public virtual void ResolveTaskTitles (INAddTasksIntent intent, System.Action<INSpeakableStringResolutionResult[]> completion);
public virtual void ResolveTemporalEventTrigger (INAddTasksIntent intent, System.Action<INAddTasksTemporalEventTriggerResolutionResult> completionHandler);
public virtual void ResolveTemporalEventTrigger (INAddTasksIntent intent, System.Action<INTemporalEventTriggerResolutionResult> completion);

Type Changed: Intents.IINAnswerCallIntentHandling

Modified methods:

-public abstract void HandleAnswerCall (INAnswerCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INAnswerCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAnswerCall (INAnswerCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INAnswerCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmAnswerCall (INAnswerCallIntent intent, System.Action<INAnswerCallIntentResponse> completion);

Type Changed: Intents.IINAppendToNoteIntentHandling

Modified methods:

-public abstract void HandleAppendToNote (INAppendToNoteIntent intent, System.Action%LESSERTHANREPLACEMENT%INAppendToNoteIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAppendToNote (INAppendToNoteIntent intent, System.Action%LESSERTHANREPLACEMENT%INAppendToNoteIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INAppendToNoteIntent intent, System.Action<INAppendToNoteIntentResponse> completion);
public virtual void ResolveContentForAppend (INAppendToNoteIntent intent, System.Action<INNoteContentResolutionResult> completion);
public virtual void ResolveTargetNoteForAppend (INAppendToNoteIntent intent, System.Action<INNoteResolutionResult> completion);

Type Changed: Intents.IINBookRestaurantReservationIntentHandling

Modified methods:

-public abstract void HandleBookRestaurantReservation (INBookRestaurantReservationIntent intent, System.Action%LESSERTHANREPLACEMENT%INBookRestaurantReservationIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleBookRestaurantReservation (INBookRestaurantReservationIntent intent, System.Action%LESSERTHANREPLACEMENT%INBookRestaurantReservationIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INBookRestaurantReservationIntent intent, System.Action<INBookRestaurantReservationIntentResponse> completion);
public virtual void ResolveBookingDate (INBookRestaurantReservationIntent intent, System.Action<INDateComponentsResolutionResult> completion);
public virtual void ResolveGuest (INBookRestaurantReservationIntent intent, System.Action<INRestaurantGuestResolutionResult> completion);
public virtual void ResolveGuestProvidedSpecialRequest (INBookRestaurantReservationIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolvePartySize (INBookRestaurantReservationIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolveRestaurant (INBookRestaurantReservationIntent intent, System.Action<INRestaurantResolutionResult> completion);

Type Changed: Intents.IINCancelRideIntentHandling

Modified methods:

-public abstract void HandleCancelRide (INCancelRideIntent intent, System.Action%LESSERTHANREPLACEMENT%INCancelRideIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleCancelRide (INCancelRideIntent intent, System.Action%LESSERTHANREPLACEMENT%INCancelRideIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void Confirm (INCancelRideIntent intent, System.Action<INCancelRideIntentResponse> completion);

Type Changed: Intents.IINCancelWorkoutIntentHandling

Modified methods:

-public abstract void HandleCancelWorkout (INCancelWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INCancelWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleCancelWorkout (INCancelWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INCancelWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INCancelWorkoutIntent intent, System.Action<INCancelWorkoutIntentResponse> completion);
public virtual void ResolveWorkoutName (INCancelWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINCreateNoteIntentHandling

Modified methods:

-public abstract void HandleCreateNote (INCreateNoteIntent intent, System.Action%LESSERTHANREPLACEMENT%INCreateNoteIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleCreateNote (INCreateNoteIntent intent, System.Action%LESSERTHANREPLACEMENT%INCreateNoteIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INCreateNoteIntent intent, System.Action<INCreateNoteIntentResponse> completion);
public virtual void ResolveContent (INCreateNoteIntent intent, System.Action<INNoteContentResolutionResult> completion);
public virtual void ResolveGroupName (INCreateNoteIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveTitle (INCreateNoteIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINCreateTaskListIntentHandling

Modified methods:

-public abstract void HandleCreateTaskList (INCreateTaskListIntent intent, System.Action%LESSERTHANREPLACEMENT%INCreateTaskListIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleCreateTaskList (INCreateTaskListIntent intent, System.Action%LESSERTHANREPLACEMENT%INCreateTaskListIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INCreateTaskListIntent intent, System.Action<INCreateTaskListIntentResponse> completion);
public virtual void ResolveGroupName (INCreateTaskListIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveTaskTitles (INCreateTaskListIntent intent, System.Action<INSpeakableStringResolutionResult[]> completion);
public virtual void ResolveTitle (INCreateTaskListIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINDeleteTasksIntentHandling

Modified methods:

-public abstract void HandleDeleteTasks (INDeleteTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INDeleteTasksIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleDeleteTasks (INDeleteTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INDeleteTasksIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INDeleteTasksIntent intent, System.Action<INDeleteTasksIntentResponse> completion);
public virtual void ResolveTaskList (INDeleteTasksIntent intent, System.Action<INDeleteTasksTaskListResolutionResult> completion);
public virtual void ResolveTasks (INDeleteTasksIntent intent, System.Action<INDeleteTasksTaskResolutionResult[]> completion);

Type Changed: Intents.IINEditMessageIntentHandling

Modified methods:

-public abstract void HandleEditMessage (INEditMessageIntent intent, System.Action%LESSERTHANREPLACEMENT%INEditMessageIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleEditMessage (INEditMessageIntent intent, System.Action%LESSERTHANREPLACEMENT%INEditMessageIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void ConfirmEditMessage (INEditMessageIntent intent, System.Action<INEditMessageIntentResponse> completion);
public virtual void ResolveEditedContent (INEditMessageIntent intent, System.Action<INStringResolutionResult> completion);

Type Changed: Intents.IINEndWorkoutIntentHandling

Modified methods:

-public abstract void HandleEndWorkout (INEndWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INEndWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleEndWorkout (INEndWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INEndWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INEndWorkoutIntent intent, System.Action<INEndWorkoutIntentResponse> completion);
public virtual void ResolveWorkoutName (INEndWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINGetAvailableRestaurantReservationBookingDefaultsIntentHandling

Modified methods:

-public abstract void HandleAvailableRestaurantReservationBookingDefaults (INGetAvailableRestaurantReservationBookingDefaultsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetAvailableRestaurantReservationBookingDefaultsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAvailableRestaurantReservationBookingDefaults (INGetAvailableRestaurantReservationBookingDefaultsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetAvailableRestaurantReservationBookingDefaultsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetAvailableRestaurantReservationBookingDefaultsIntent intent, System.Action<INGetAvailableRestaurantReservationBookingDefaultsIntentResponse> completion);
public virtual void ResolveAvailableRestaurantReservationBookingDefaults (INGetAvailableRestaurantReservationBookingDefaultsIntent intent, System.Action<INRestaurantResolutionResult> completion);

Type Changed: Intents.IINGetAvailableRestaurantReservationBookingsIntentHandling

Modified methods:

-public abstract void HandleAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetAvailableRestaurantReservationBookingsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetAvailableRestaurantReservationBookingsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action<INGetAvailableRestaurantReservationBookingsIntentResponse> completion);
public virtual void ResolveAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action<INRestaurantResolutionResult> completion);
public virtual void ResolvePartySizeAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolvePreferredBookingDateAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action<INDateComponentsResolutionResult> completion);

Type Changed: Intents.IINGetCarLockStatusIntentHandling

Modified methods:

-public abstract void HandleGetCarLockStatus (INGetCarLockStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetCarLockStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleGetCarLockStatus (INGetCarLockStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetCarLockStatusIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetCarLockStatusIntent intent, System.Action<INGetCarLockStatusIntentResponse> completion);
public virtual void ResolveCarName (INGetCarLockStatusIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINGetCarPowerLevelStatusIntentHandling

Modified methods:

-public abstract void HandleGetCarPowerLevelStatus (INGetCarPowerLevelStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetCarPowerLevelStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleGetCarPowerLevelStatus (INGetCarPowerLevelStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetCarPowerLevelStatusIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetCarPowerLevelStatusIntent intent, System.Action<INGetCarPowerLevelStatusIntentResponse> completion);
public virtual void ResolveCarName (INGetCarPowerLevelStatusIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void StartSendingUpdates (INGetCarPowerLevelStatusIntent intent, IINGetCarPowerLevelStatusIntentResponseObserver observer);
public virtual void StopSendingUpdates (INGetCarPowerLevelStatusIntent intent);

Type Changed: Intents.IINGetCarPowerLevelStatusIntentResponseObserver

Modified methods:

-public abstract void DidUpdate (INGetCarPowerLevelStatusIntentResponse response)
+public virtual void DidUpdate (INGetCarPowerLevelStatusIntentResponse response)

Type Changed: Intents.IINGetRestaurantGuestIntentHandling

Modified methods:

-public abstract void HandleRestaurantGuest (INGetRestaurantGuestIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetRestaurantGuestIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleRestaurantGuest (INGetRestaurantGuestIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetRestaurantGuestIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void Confirm (INGetRestaurantGuestIntent guestIntent, System.Action<INGetRestaurantGuestIntentResponse> completion);

Type Changed: Intents.IINGetRideStatusIntentHandling

Modified methods:

-public abstract void HandleRideStatus (INGetRideStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetRideStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleRideStatus (INGetRideStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetRideStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
-public abstract void StartSendingUpdates (INGetRideStatusIntent intent, IINGetRideStatusIntentResponseObserver observer)
+public virtual void StartSendingUpdates (INGetRideStatusIntent intent, IINGetRideStatusIntentResponseObserver observer)
-public abstract void StopSendingUpdates (INGetRideStatusIntent intent)
+public virtual void StopSendingUpdates (INGetRideStatusIntent intent)

Added method:

public virtual void Confirm (INGetRideStatusIntent intent, System.Action<INGetRideStatusIntentResponse> completion);

Type Changed: Intents.IINGetRideStatusIntentResponseObserver

Modified methods:

-public abstract void DidUpdateRideStatus (INGetRideStatusIntentResponse response)
+public virtual void DidUpdateRideStatus (INGetRideStatusIntentResponse response)

Type Changed: Intents.IINGetUserCurrentRestaurantReservationBookingsIntentHandling

Modified methods:

-public abstract void HandleUserCurrentRestaurantReservationBookings (INGetUserCurrentRestaurantReservationBookingsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetUserCurrentRestaurantReservationBookingsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleUserCurrentRestaurantReservationBookings (INGetUserCurrentRestaurantReservationBookingsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetUserCurrentRestaurantReservationBookingsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetUserCurrentRestaurantReservationBookingsIntent intent, System.Action<INGetUserCurrentRestaurantReservationBookingsIntentResponse> completion);
public virtual void ResolveUserCurrentRestaurantReservationBookings (INGetUserCurrentRestaurantReservationBookingsIntent intent, System.Action<INRestaurantResolutionResult> completion);

Type Changed: Intents.IINGetVisualCodeIntentHandling

Modified methods:

-public abstract void HandleGetVisualCode (INGetVisualCodeIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetVisualCodeIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleGetVisualCode (INGetVisualCodeIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetVisualCodeIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetVisualCodeIntent intent, System.Action<INGetVisualCodeIntentResponse> completion);
public virtual void ResolveVisualCodeType (INGetVisualCodeIntent intent, System.Action<INVisualCodeTypeResolutionResult> completion);

Type Changed: Intents.IINHangUpCallIntentHandling

Modified methods:

-public abstract void HandleHangUpCall (INHangUpCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INHangUpCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleHangUpCall (INHangUpCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INHangUpCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmHangUpCall (INHangUpCallIntent intent, System.Action<INHangUpCallIntentResponse> completion);

Type Changed: Intents.IINIntentHandlerProviding

Modified methods:

-public abstract Foundation.NSObject GetHandler (INIntent intent)
+public virtual Foundation.NSObject GetHandler (INIntent intent)

Type Changed: Intents.IINListCarsIntentHandling

Modified methods:

-public abstract void HandleListCars (INListCarsIntent intent, System.Action%LESSERTHANREPLACEMENT%INListCarsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleListCars (INListCarsIntent intent, System.Action%LESSERTHANREPLACEMENT%INListCarsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmListCars (INListCarsIntent intent, System.Action<INListCarsIntentResponse> completion);

Type Changed: Intents.IINListRideOptionsIntentHandling

Modified methods:

-public abstract void HandleListRideOptions (INListRideOptionsIntent intent, System.Action%LESSERTHANREPLACEMENT%INListRideOptionsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleListRideOptions (INListRideOptionsIntent intent, System.Action%LESSERTHANREPLACEMENT%INListRideOptionsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INListRideOptionsIntent intent, System.Action<INListRideOptionsIntentResponse> completion);
public virtual void ResolveDropOffLocation (INListRideOptionsIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolvePickupLocation (INListRideOptionsIntent intent, System.Action<INPlacemarkResolutionResult> completion);

Type Changed: Intents.IINPauseWorkoutIntentHandling

Modified methods:

-public abstract void HandlePauseWorkout (INPauseWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INPauseWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandlePauseWorkout (INPauseWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INPauseWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INPauseWorkoutIntent intent, System.Action<INPauseWorkoutIntentResponse> completion);
public virtual void ResolveWorkoutName (INPauseWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINPayBillIntentHandling

Modified methods:

-public abstract void HandlePayBill (INPayBillIntent intent, System.Action%LESSERTHANREPLACEMENT%INPayBillIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandlePayBill (INPayBillIntent intent, System.Action%LESSERTHANREPLACEMENT%INPayBillIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INPayBillIntent intent, System.Action<INPayBillIntentResponse> completion);
public virtual void ResolveBillPayee (INPayBillIntent intent, System.Action<INBillPayeeResolutionResult> completion);
public virtual void ResolveBillType (INPayBillIntent intent, System.Action<INBillTypeResolutionResult> completion);
public virtual void ResolveDueDate (INPayBillIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveFromAccount (INPayBillIntent intent, System.Action<INPaymentAccountResolutionResult> completion);
public virtual void ResolveTransactionAmount (INPayBillIntent intent, System.Action<INPaymentAmountResolutionResult> completion);
public virtual void ResolveTransactionNote (INPayBillIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveTransactionScheduledDate (INPayBillIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);

Type Changed: Intents.IINPlayMediaIntentHandling

Modified methods:

-public abstract void HandlePlayMedia (INPlayMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INPlayMediaIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandlePlayMedia (INPlayMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INPlayMediaIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INPlayMediaIntent intent, System.Action<INPlayMediaIntentResponse> completion);
public virtual void ResolveMediaItems (INPlayMediaIntent intent, System.Action<Foundation.NSArray<INPlayMediaMediaItemResolutionResult>> completion);
public virtual void ResolvePlayShuffled (INPlayMediaIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolvePlaybackQueueLocation (INPlayMediaIntent intent, System.Action<INPlaybackQueueLocationResolutionResult> completion);
public virtual void ResolvePlaybackRepeatMode (INPlayMediaIntent intent, System.Action<INPlaybackRepeatModeResolutionResult> completion);
public virtual void ResolvePlaybackSpeed (INPlayMediaIntent intent, System.Action<INPlayMediaPlaybackSpeedResolutionResult> completion);
public virtual void ResolveResumePlayback (INPlayMediaIntent intent, System.Action<INBooleanResolutionResult> completion);

Type Changed: Intents.IINRequestPaymentIntentHandling

Modified methods:

-public abstract void HandleRequestPayment (INRequestPaymentIntent intent, System.Action%LESSERTHANREPLACEMENT%INRequestPaymentIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleRequestPayment (INRequestPaymentIntent intent, System.Action%LESSERTHANREPLACEMENT%INRequestPaymentIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INRequestPaymentIntent intent, System.Action<INRequestPaymentIntentResponse> completion);
public virtual void ResolveCurrencyAmount (INRequestPaymentIntent intent, System.Action<INCurrencyAmountResolutionResult> completion);
public virtual void ResolveCurrencyAmount (INRequestPaymentIntent intent, System.Action<INRequestPaymentCurrencyAmountResolutionResult> completion);
public virtual void ResolveNote (INRequestPaymentIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolvePayer (INRequestPaymentIntent intent, System.Action<INPersonResolutionResult> completion);
public virtual void ResolvePayer (INRequestPaymentIntent intent, System.Action<INRequestPaymentPayerResolutionResult> completion);

Type Changed: Intents.IINRequestRideIntentHandling

Modified methods:

-public abstract void HandleRequestRide (INRequestRideIntent intent, System.Action%LESSERTHANREPLACEMENT%INRequestRideIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleRequestRide (INRequestRideIntent intent, System.Action%LESSERTHANREPLACEMENT%INRequestRideIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INRequestRideIntent intent, System.Action<INRequestRideIntentResponse> completion);
public virtual void ResolveDropOffLocation (INRequestRideIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolvePartySize (INRequestRideIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolvePickupLocation (INRequestRideIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolveRideOptionName (INRequestRideIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveScheduledPickupTime (INRequestRideIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);

Type Changed: Intents.IINResumeWorkoutIntentHandling

Modified methods:

-public abstract void HandleResumeWorkout (INResumeWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INResumeWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleResumeWorkout (INResumeWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INResumeWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INResumeWorkoutIntent intent, System.Action<INResumeWorkoutIntentResponse> completion);
public virtual void ResolveWorkoutName (INResumeWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINSaveProfileInCarIntentHandling

Modified methods:

-public abstract void HandleSaveProfileInCar (INSaveProfileInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSaveProfileInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSaveProfileInCar (INSaveProfileInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSaveProfileInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSaveProfileInCarIntent intent, System.Action<INSaveProfileInCarIntentResponse> completion);
public virtual void ResolveProfileName (INSaveProfileInCarIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveProfileNumber (INSaveProfileInCarIntent intent, System.Action<INIntegerResolutionResult> completion);

Type Changed: Intents.IINSearchCallHistoryIntentHandling

Modified methods:

-public abstract void HandleSearchCallHistory (INSearchCallHistoryIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchCallHistoryIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchCallHistory (INSearchCallHistoryIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchCallHistoryIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchCallHistoryIntent intent, System.Action<INSearchCallHistoryIntentResponse> completion);
public virtual void ResolveCallType (INSearchCallHistoryIntent intent, System.Action<INCallRecordTypeResolutionResult> completion);
public virtual void ResolveCallTypes (INSearchCallHistoryIntent intent, System.Action<INCallRecordTypeOptionsResolutionResult> completion);
public virtual void ResolveDateCreated (INSearchCallHistoryIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveRecipient (INSearchCallHistoryIntent intent, System.Action<INPersonResolutionResult> completion);
public virtual void ResolveUnseen (INSearchCallHistoryIntent intent, System.Action<INBooleanResolutionResult> completion);

Type Changed: Intents.IINSearchForAccountsIntentHandling

Modified methods:

-public abstract void HandleSearchForAccounts (INSearchForAccountsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForAccountsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchForAccounts (INSearchForAccountsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForAccountsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForAccountsIntent intent, System.Action<INSearchForAccountsIntentResponse> completion);
public virtual void ResolveAccountNickname (INSearchForAccountsIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveAccountType (INSearchForAccountsIntent intent, System.Action<INAccountTypeResolutionResult> completion);
public virtual void ResolveOrganizationName (INSearchForAccountsIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveRequestedBalanceType (INSearchForAccountsIntent intent, System.Action<INBalanceTypeResolutionResult> completion);

Type Changed: Intents.IINSearchForBillsIntentHandling

Modified methods:

-public abstract void HandleSearch (INSearchForBillsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForBillsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearch (INSearchForBillsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForBillsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForBillsIntent intent, System.Action<INSearchForBillsIntentResponse> completion);
public virtual void ResolveBillPayee (INSearchForBillsIntent intent, System.Action<INBillPayeeResolutionResult> completion);
public virtual void ResolveBillType (INSearchForBillsIntent intent, System.Action<INBillTypeResolutionResult> completion);
public virtual void ResolveDueDateRange (INSearchForBillsIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolvePaymentDateRange (INSearchForBillsIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveStatus (INSearchForBillsIntent intent, System.Action<INPaymentStatusResolutionResult> completion);

Type Changed: Intents.IINSearchForMediaIntentHandling

Modified methods:

-public abstract void HandleSearch (INSearchForMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForMediaIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearch (INSearchForMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForMediaIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForMediaIntent intent, System.Action<INSearchForMediaIntentResponse> completion);
public virtual void ResolveMediaItems (INSearchForMediaIntent intent, System.Action<INSearchForMediaMediaItemResolutionResult[]> completion);

Type Changed: Intents.IINSearchForMessagesIntentHandling

Modified methods:

-public abstract void HandleSearchForMessages (INSearchForMessagesIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForMessagesIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchForMessages (INSearchForMessagesIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForMessagesIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForMessagesIntent intent, System.Action<INSearchForMessagesIntentResponse> completion);
public virtual void ResolveAttributes (INSearchForMessagesIntent intent, System.Action<INMessageAttributeOptionsResolutionResult> completion);
public virtual void ResolveDateTimeRange (INSearchForMessagesIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveGroupNames (INSearchForMessagesIntent intent, System.Action<INStringResolutionResult[]> completion);
public virtual void ResolveRecipients (INSearchForMessagesIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveSenders (INSearchForMessagesIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveSpeakableGroupNames (INSearchForMessagesIntent intent, System.Action<INSpeakableStringResolutionResult[]> completion);

Type Changed: Intents.IINSearchForNotebookItemsIntentHandling

Modified methods:

-public abstract void HandleSearchForNotebookItems (INSearchForNotebookItemsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForNotebookItemsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchForNotebookItems (INSearchForNotebookItemsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForNotebookItemsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForNotebookItemsIntent intent, System.Action<INSearchForNotebookItemsIntentResponse> completion);
public virtual void ResolveContent (INSearchForNotebookItemsIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveDateSearchType (INSearchForNotebookItemsIntent intent, System.Action<INDateSearchTypeResolutionResult> completion);
public virtual void ResolveDateTime (INSearchForNotebookItemsIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveItemType (INSearchForNotebookItemsIntent intent, System.Action<INNotebookItemTypeResolutionResult> completion);
public virtual void ResolveLocation (INSearchForNotebookItemsIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolveLocationSearchType (INSearchForNotebookItemsIntent intent, System.Action<INLocationSearchTypeResolutionResult> completion);
public virtual void ResolveStatus (INSearchForNotebookItemsIntent intent, System.Action<INTaskStatusResolutionResult> completion);
public virtual void ResolveTaskPriority (INSearchForNotebookItemsIntent intent, System.Action<INTaskPriorityResolutionResult> completion);
public virtual void ResolveTemporalEventTriggerTypes (INSearchForNotebookItemsIntent intent, System.Action<INTemporalEventTriggerTypeOptionsResolutionResult> completion);
public virtual void ResolveTitle (INSearchForNotebookItemsIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINSearchForPhotosIntentHandling

Modified methods:

-public abstract void HandleSearchForPhotos (INSearchForPhotosIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForPhotosIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchForPhotos (INSearchForPhotosIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForPhotosIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForPhotosIntent intent, System.Action<INSearchForPhotosIntentResponse> completion);
public virtual void ResolveAlbumName (INSearchForPhotosIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveDateCreated (INSearchForPhotosIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveLocationCreated (INSearchForPhotosIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolvePeopleInPhoto (INSearchForPhotosIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveSearchTerms (INSearchForPhotosIntent intent, System.Action<INStringResolutionResult[]> completion);

Type Changed: Intents.IINSendMessageIntentHandling

Modified methods:

-public abstract void HandleSendMessage (INSendMessageIntent intent, System.Action%LESSERTHANREPLACEMENT%INSendMessageIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSendMessage (INSendMessageIntent intent, System.Action%LESSERTHANREPLACEMENT%INSendMessageIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSendMessageIntent intent, System.Action<INSendMessageIntentResponse> completion);
public virtual void ResolveContent (INSendMessageIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveGroupName (INSendMessageIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveOutgoingMessageType (INSendMessageIntent intent, System.Action<INOutgoingMessageTypeResolutionResult> completion);
public virtual void ResolveRecipients (INSendMessageIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveRecipients (INSendMessageIntent intent, System.Action<INSendMessageRecipientResolutionResult[]> completion);
public virtual void ResolveSpeakableGroupName (INSendMessageIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINSendPaymentIntentHandling

Modified methods:

-public abstract void HandleSendPayment (INSendPaymentIntent intent, System.Action%LESSERTHANREPLACEMENT%INSendPaymentIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSendPayment (INSendPaymentIntent intent, System.Action%LESSERTHANREPLACEMENT%INSendPaymentIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSendPaymentIntent intent, System.Action<INSendPaymentIntentResponse> completion);
public virtual void ResolveCurrencyAmount (INSendPaymentIntent intent, System.Action<INCurrencyAmountResolutionResult> completion);
public virtual void ResolveCurrencyAmount (INSendPaymentIntent intent, System.Action<INSendPaymentCurrencyAmountResolutionResult> completion);
public virtual void ResolveNote (INSendPaymentIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolvePayee (INSendPaymentIntent intent, System.Action<INPersonResolutionResult> completion);
public virtual void ResolvePayee (INSendPaymentIntent intent, System.Action<INSendPaymentPayeeResolutionResult> completion);

Type Changed: Intents.IINSendRideFeedbackIntentHandling

Modified methods:

-public abstract void HandleSendRideFeedback (INSendRideFeedbackIntent sendRideFeedbackintent, System.Action%LESSERTHANREPLACEMENT%INSendRideFeedbackIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSendRideFeedback (INSendRideFeedbackIntent sendRideFeedbackintent, System.Action%LESSERTHANREPLACEMENT%INSendRideFeedbackIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void Confirm (INSendRideFeedbackIntent sendRideFeedbackIntent, System.Action<INSendRideFeedbackIntentResponse> completion);

Type Changed: Intents.IINSetAudioSourceInCarIntentHandling

Modified methods:

-public abstract void HandleSetAudioSourceInCar (INSetAudioSourceInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetAudioSourceInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetAudioSourceInCar (INSetAudioSourceInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetAudioSourceInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetAudioSourceInCarIntent intent, System.Action<INSetAudioSourceInCarIntentResponse> completion);
public virtual void ResolveAudioSource (INSetAudioSourceInCarIntent intent, System.Action<INCarAudioSourceResolutionResult> completion);
public virtual void ResolveRelativeAudioSourceReference (INSetAudioSourceInCarIntent intent, System.Action<INRelativeReferenceResolutionResult> completion);

Type Changed: Intents.IINSetCarLockStatusIntentHandling

Modified methods:

-public abstract void HandleSetCarLockStatus (INSetCarLockStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetCarLockStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetCarLockStatus (INSetCarLockStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetCarLockStatusIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetCarLockStatusIntent intent, System.Action<INSetCarLockStatusIntentResponse> completion);
public virtual void ResolveCarName (INSetCarLockStatusIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveLocked (INSetCarLockStatusIntent intent, System.Action<INBooleanResolutionResult> completion);

Type Changed: Intents.IINSetClimateSettingsInCarIntentHandling

Modified methods:

-public abstract void HandleSetClimateSettingsInCar (INSetClimateSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetClimateSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetClimateSettingsInCar (INSetClimateSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetClimateSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetClimateSettingsInCarIntent intent, System.Action<INSetClimateSettingsInCarIntentResponse> completion);
public virtual void ResolveAirCirculationMode (INSetClimateSettingsInCarIntent intent, System.Action<INCarAirCirculationModeResolutionResult> completion);
public virtual void ResolveCarName (INSetClimateSettingsInCarIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveClimateZone (INSetClimateSettingsInCarIntent intent, System.Action<INCarSeatResolutionResult> completion);
public virtual void ResolveEnableAirConditioner (INSetClimateSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableAutoMode (INSetClimateSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableClimateControl (INSetClimateSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableFan (INSetClimateSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveFanSpeedIndex (INSetClimateSettingsInCarIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolveFanSpeedPercentage (INSetClimateSettingsInCarIntent intent, System.Action<INDoubleResolutionResult> completion);
public virtual void ResolveRelativeFanSpeedSetting (INSetClimateSettingsInCarIntent intent, System.Action<INRelativeSettingResolutionResult> completion);
public virtual void ResolveRelativeTemperatureSetting (INSetClimateSettingsInCarIntent intent, System.Action<INRelativeSettingResolutionResult> completion);
public virtual void ResolveTemperature (INSetClimateSettingsInCarIntent intent, System.Action<INTemperatureResolutionResult> completion);

Type Changed: Intents.IINSetDefrosterSettingsInCarIntentHandling

Modified methods:

-public abstract void HandleSetDefrosterSettingsInCar (INSetDefrosterSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetDefrosterSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetDefrosterSettingsInCar (INSetDefrosterSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetDefrosterSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetDefrosterSettingsInCarIntent intent, System.Action<INSetDefrosterSettingsInCarIntentResponse> completion);
public virtual void ResolveCarName (INSetDefrosterSettingsInCarIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveDefroster (INSetDefrosterSettingsInCarIntent intent, System.Action<INCarDefrosterResolutionResult> completion);
public virtual void ResolveEnable (INSetDefrosterSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);

Type Changed: Intents.IINSetMessageAttributeIntentHandling

Modified methods:

-public abstract void HandleSetMessageAttribute (INSetMessageAttributeIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetMessageAttributeIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetMessageAttribute (INSetMessageAttributeIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetMessageAttributeIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetMessageAttributeIntent intent, System.Action<INSetMessageAttributeIntentResponse> completion);
public virtual void ResolveAttribute (INSetMessageAttributeIntent intent, System.Action<INMessageAttributeResolutionResult> completion);

Type Changed: Intents.IINSetProfileInCarIntentHandling

Modified methods:

-public abstract void HandleSetProfileInCar (INSetProfileInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetProfileInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetProfileInCar (INSetProfileInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetProfileInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetProfileInCarIntent intent, System.Action<INSetProfileInCarIntentResponse> completion);
public virtual void ResolveCarName (INSetProfileInCarIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveDefaultProfile (INSetProfileInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveProfileName (INSetProfileInCarIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveProfileNumber (INSetProfileInCarIntent intent, System.Action<INIntegerResolutionResult> completion);

Type Changed: Intents.IINSetRadioStationIntentHandling

Modified methods:

-public abstract void HandleSetRadioStation (INSetRadioStationIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetRadioStationIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetRadioStation (INSetRadioStationIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetRadioStationIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetRadioStationIntent intent, System.Action<INSetRadioStationIntentResponse> completion);
public virtual void ResolveChannel (INSetRadioStationIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveFrequency (INSetRadioStationIntent intent, System.Action<INDoubleResolutionResult> completion);
public virtual void ResolvePresetNumber (INSetRadioStationIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolveRadioType (INSetRadioStationIntent intent, System.Action<INRadioTypeResolutionResult> completion);
public virtual void ResolveStationName (INSetRadioStationIntent intent, System.Action<INStringResolutionResult> completion);

Type Changed: Intents.IINSetSeatSettingsInCarIntentHandling

Modified methods:

-public abstract void HandleSetSeatSettingsInCar (INSetSeatSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetSeatSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetSeatSettingsInCar (INSetSeatSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetSeatSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetSeatSettingsInCarIntent intent, System.Action<INSetSeatSettingsInCarIntentResponse> completion);
public virtual void ResolveCarName (INSetSeatSettingsInCarIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveEnableCooling (INSetSeatSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableHeating (INSetSeatSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableMassage (INSetSeatSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveLevel (INSetSeatSettingsInCarIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolveRelativeLevelSetting (INSetSeatSettingsInCarIntent intent, System.Action<INRelativeSettingResolutionResult> completion);
public virtual void ResolveSeat (INSetSeatSettingsInCarIntent intent, System.Action<INCarSeatResolutionResult> completion);

Type Changed: Intents.IINSetTaskAttributeIntentHandling

Modified methods:

-public abstract void HandleSetTaskAttribute (INSetTaskAttributeIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetTaskAttributeIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetTaskAttribute (INSetTaskAttributeIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetTaskAttributeIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetTaskAttributeIntent intent, System.Action<INSetTaskAttributeIntentResponse> completion);
public virtual void ResolvePriority (INSetTaskAttributeIntent intent, System.Action<INTaskPriorityResolutionResult> completion);
public virtual void ResolveSpatialEventTrigger (INSetTaskAttributeIntent intent, System.Action<INSpatialEventTriggerResolutionResult> completion);
public virtual void ResolveStatus (INSetTaskAttributeIntent intent, System.Action<INTaskStatusResolutionResult> completion);
public virtual void ResolveTargetTask (INSetTaskAttributeIntent intent, System.Action<INTaskResolutionResult> completion);
public virtual void ResolveTaskTitle (INSetTaskAttributeIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveTemporalEventTrigger (INSetTaskAttributeIntent intent, System.Action<INSetTaskAttributeTemporalEventTriggerResolutionResult> completionHandler);
public virtual void ResolveTemporalEventTrigger (INSetTaskAttributeIntent intent, System.Action<INTemporalEventTriggerResolutionResult> completion);

Type Changed: Intents.IINShareFocusStatusIntentHandling

Modified methods:

-public abstract void HandleShareFocusStatus (INShareFocusStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INShareFocusStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleShareFocusStatus (INShareFocusStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INShareFocusStatusIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmShareFocusStatus (INShareFocusStatusIntent intent, System.Action<INShareFocusStatusIntentResponse> completion);

Type Changed: Intents.IINSnoozeTasksIntentHandling

Modified methods:

-public abstract void HandleSnoozeTasks (INSnoozeTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INSnoozeTasksIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSnoozeTasks (INSnoozeTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INSnoozeTasksIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSnoozeTasksIntent intent, System.Action<INSnoozeTasksIntentResponse> completion);
public virtual void ResolveNextTriggerTime (INSnoozeTasksIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveTasks (INSnoozeTasksIntent intent, System.Action<INSnoozeTasksTaskResolutionResult[]> completion);

Type Changed: Intents.IINSpeakable

Modified properties:

-public abstract IINSpeakable[] AlternativeSpeakableMatches { get; }
+public virtual IINSpeakable[] AlternativeSpeakableMatches { get; }
-public abstract string PronunciationHint { get; }
+public virtual string PronunciationHint { get; }
-public abstract string SpokenPhrase { get; }
+public virtual string SpokenPhrase { get; }
-public abstract string VocabularyIdentifier { get; }
+public virtual string VocabularyIdentifier { get; }

Added property:

public virtual string Identifier { get; }

Type Changed: Intents.IINStartAudioCallIntentHandling

Modified methods:

-public abstract void HandleStartAudioCall (INStartAudioCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartAudioCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartAudioCall (INStartAudioCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartAudioCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartAudioCallIntent intent, System.Action<INStartAudioCallIntentResponse> completion);
public virtual void ResolveContacts (INStartAudioCallIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveDestinationType (INStartAudioCallIntent intent, System.Action<INCallDestinationTypeResolutionResult> completion);

Type Changed: Intents.IINStartCallIntentHandling

Modified methods:

-public abstract void HandleStartCall (INStartCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartCall (INStartCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartCallIntent intent, System.Action<INStartCallIntentResponse> completion);
public virtual void ResolveCallCapability (INStartCallIntent intent, System.Action<INStartCallCallCapabilityResolutionResult> completion);
public virtual void ResolveCallRecordToCallBack (INStartCallIntent intent, System.Action<INCallRecordResolutionResult> completion);
public virtual void ResolveContacts (INStartCallIntent intent, System.Action<Foundation.NSArray<INStartCallContactResolutionResult>> completion);
public virtual void ResolveDestinationType (INStartCallIntent intent, System.Action<INCallDestinationTypeResolutionResult> completion);

Type Changed: Intents.IINStartPhotoPlaybackIntentHandling

Modified methods:

-public abstract void HandleStartPhotoPlayback (INStartPhotoPlaybackIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartPhotoPlaybackIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartPhotoPlayback (INStartPhotoPlaybackIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartPhotoPlaybackIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartPhotoPlaybackIntent intent, System.Action<INStartPhotoPlaybackIntentResponse> completion);
public virtual void ResolveAlbumName (INStartPhotoPlaybackIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveDateCreated (INStartPhotoPlaybackIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveLocationCreated (INStartPhotoPlaybackIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolvePeopleInPhoto (INStartPhotoPlaybackIntent intent, System.Action<INPersonResolutionResult[]> completion);

Type Changed: Intents.IINStartVideoCallIntentHandling

Modified methods:

-public abstract void HandleStartVideoCall (INStartVideoCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartVideoCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartVideoCall (INStartVideoCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartVideoCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartVideoCallIntent intent, System.Action<INStartVideoCallIntentResponse> completion);
public virtual void ResolveContacts (INStartVideoCallIntent intent, System.Action<INPersonResolutionResult[]> completion);

Type Changed: Intents.IINStartWorkoutIntentHandling

Modified methods:

-public abstract void HandleStartWorkout (INStartWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartWorkout (INStartWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartWorkoutIntent intent, System.Action<INStartWorkoutIntentResponse> completion);
public virtual void ResolveGoalValue (INStartWorkoutIntent intent, System.Action<INDoubleResolutionResult> completion);
public virtual void ResolveIsOpenEnded (INStartWorkoutIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveWorkoutGoalUnitType (INStartWorkoutIntent intent, System.Action<INWorkoutGoalUnitTypeResolutionResult> completion);
public virtual void ResolveWorkoutLocationType (INStartWorkoutIntent intent, System.Action<INWorkoutLocationTypeResolutionResult> completion);
public virtual void ResolveWorkoutName (INStartWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINTransferMoneyIntentHandling

Modified methods:

-public abstract void HandleTransferMoney (INTransferMoneyIntent intent, System.Action%LESSERTHANREPLACEMENT%INTransferMoneyIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleTransferMoney (INTransferMoneyIntent intent, System.Action%LESSERTHANREPLACEMENT%INTransferMoneyIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INTransferMoneyIntent intent, System.Action<INTransferMoneyIntentResponse> completion);
public virtual void ResolveFromAccount (INTransferMoneyIntent intent, System.Action<INPaymentAccountResolutionResult> completion);
public virtual void ResolveToAccount (INTransferMoneyIntent intent, System.Action<INPaymentAccountResolutionResult> completion);
public virtual void ResolveTransactionAmount (INTransferMoneyIntent intent, System.Action<INPaymentAmountResolutionResult> completion);
public virtual void ResolveTransactionNote (INTransferMoneyIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveTransactionScheduledDate (INTransferMoneyIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);

Type Changed: Intents.IINUnsendMessagesIntentHandling

Modified methods:

-public abstract void HandleUnsendMessages (INUnsendMessagesIntent intent, System.Action%LESSERTHANREPLACEMENT%INUnsendMessagesIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleUnsendMessages (INUnsendMessagesIntent intent, System.Action%LESSERTHANREPLACEMENT%INUnsendMessagesIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmUnsendMessages (INUnsendMessagesIntent intent, System.Action<INUnsendMessagesIntentResponse> completion);

Type Changed: Intents.IINUpdateMediaAffinityIntentHandling

Modified methods:

-public abstract void HandleUpdateMediaAffinity (INUpdateMediaAffinityIntent intent, System.Action%LESSERTHANREPLACEMENT%INUpdateMediaAffinityIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleUpdateMediaAffinity (INUpdateMediaAffinityIntent intent, System.Action%LESSERTHANREPLACEMENT%INUpdateMediaAffinityIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INUpdateMediaAffinityIntent intent, System.Action<INUpdateMediaAffinityIntentResponse> completion);
public virtual void ResolveAffinityType (INUpdateMediaAffinityIntent intent, System.Action<INMediaAffinityTypeResolutionResult> completion);
public virtual void ResolveMediaItems (INUpdateMediaAffinityIntent intent, System.Action<Foundation.NSArray<INUpdateMediaAffinityMediaItemResolutionResult>> completion);

Type Changed: Intents.INCarChargingConnectorType

Added values:

NacsAC = 10,
NacsDC = 9,

Namespace IntentsUI

Type Changed: IntentsUI.IINUIAddVoiceShortcutButtonDelegate

Modified methods:

-public abstract void PresentAddVoiceShortcut (INUIAddVoiceShortcutViewController addVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton)
+public virtual void PresentAddVoiceShortcut (INUIAddVoiceShortcutViewController addVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton)
-public abstract void PresentEditVoiceShortcut (INUIEditVoiceShortcutViewController editVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton)
+public virtual void PresentEditVoiceShortcut (INUIEditVoiceShortcutViewController editVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton)

Type Changed: IntentsUI.IINUIAddVoiceShortcutViewControllerDelegate

Modified methods:

-public abstract void DidCancel (INUIAddVoiceShortcutViewController controller)
+public virtual void DidCancel (INUIAddVoiceShortcutViewController controller)
-public abstract void DidFinish (INUIAddVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error)
+public virtual void DidFinish (INUIAddVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error)

Type Changed: IntentsUI.IINUIEditVoiceShortcutViewControllerDelegate

Modified methods:

-public abstract void DidCancel (INUIEditVoiceShortcutViewController controller)
+public virtual void DidCancel (INUIEditVoiceShortcutViewController controller)
-public abstract void DidDelete (INUIEditVoiceShortcutViewController controller, Foundation.NSUuid deletedVoiceShortcutIdentifier)
+public virtual void DidDelete (INUIEditVoiceShortcutViewController controller, Foundation.NSUuid deletedVoiceShortcutIdentifier)
-public abstract void DidUpdate (INUIEditVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error)
+public virtual void DidUpdate (INUIEditVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error)

Type Changed: IntentsUI.IINUIHostedViewControlling

Added methods:

public virtual void Configure (Intents.INInteraction interaction, INUIHostedViewContext context, System.Action<CoreGraphics.CGSize> completion);
public virtual void ConfigureView (Foundation.NSSet<Intents.INParameter> parameters, Intents.INInteraction interaction, INUIInteractiveBehavior interactiveBehavior, INUIHostedViewContext context, INUIHostedViewControllingConfigureViewHandler completionHandler);

Type Changed: IntentsUI.IINUIHostedViewSiriProviding

Added properties:

public virtual bool DisplaysMap { get; }
public virtual bool DisplaysMessage { get; }
public virtual bool DisplaysPaymentTransaction { get; }

Namespace MapKit

Type Changed: MapKit.IMKAnnotation

Modified properties:

-public abstract CoreLocation.CLLocationCoordinate2D Coordinate { get; }
+public virtual CoreLocation.CLLocationCoordinate2D Coordinate { get; }

Added properties:

public virtual string Subtitle { get; }
public virtual string Title { get; }

Added method:

public virtual void SetCoordinate (CoreLocation.CLLocationCoordinate2D value);

Type Changed: MapKit.IMKLocalSearchCompleterDelegate

Added methods:

public virtual void DidFail (MKLocalSearchCompleter completer, Foundation.NSError error);
public virtual void DidUpdateResults (MKLocalSearchCompleter completer);

Type Changed: MapKit.IMKLookAroundViewControllerDelegate

Added methods:

public virtual void DidDismissFullScreen (MKLookAroundViewController viewController);
public virtual void DidPresentFullScreen (MKLookAroundViewController viewController);
public virtual void DidUpdateScene (MKLookAroundViewController viewController);
public virtual void WillDismissFullScreen (MKLookAroundViewController viewController);
public virtual void WillPresentFullScreen (MKLookAroundViewController viewController);
public virtual void WillUpdateScene (MKLookAroundViewController viewController);

Type Changed: MapKit.IMKMapViewDelegate

Added methods:

public virtual void CalloutAccessoryControlTapped (MKMapView mapView, MKAnnotationView view, UIKit.UIControl control);
public virtual void ChangedDragState (MKMapView mapView, MKAnnotationView annotationView, MKAnnotationViewDragState newState, MKAnnotationViewDragState oldState);
public virtual MKClusterAnnotation CreateClusterAnnotation (MKMapView mapView, IMKAnnotation[] memberAnnotations);
public virtual void DidAddAnnotationViews (MKMapView mapView, MKAnnotationView[] views);
public virtual void DidAddOverlayRenderers (MKMapView mapView, MKOverlayRenderer[] renderers);
public virtual void DidAddOverlayViews (MKMapView mapView, MKOverlayView overlayViews);
public virtual void DidChangeUserTrackingMode (MKMapView mapView, MKUserTrackingMode mode, bool animated);
public virtual void DidChangeVisibleRegion (MKMapView mapView);
public virtual void DidDeselectAnnotation (MKMapView mapView, IMKAnnotation annotation);
public virtual void DidDeselectAnnotationView (MKMapView mapView, MKAnnotationView view);
public virtual void DidFailToLocateUser (MKMapView mapView, Foundation.NSError error);
public virtual void DidFinishRenderingMap (MKMapView mapView, bool fullyRendered);
public virtual void DidSelectAnnotation (MKMapView mapView, IMKAnnotation annotation);
public virtual void DidSelectAnnotationView (MKMapView mapView, MKAnnotationView view);
public virtual void DidStopLocatingUser (MKMapView mapView);
public virtual void DidUpdateUserLocation (MKMapView mapView, MKUserLocation userLocation);
public virtual MKAnnotationView GetViewForAnnotation (MKMapView mapView, IMKAnnotation annotation);
public virtual MKOverlayView GetViewForOverlay (MKMapView mapView, IMKOverlay overlay);
public virtual void LoadingMapFailed (MKMapView mapView, Foundation.NSError error);
public virtual void MapLoaded (MKMapView mapView);
public virtual MKOverlayRenderer OverlayRenderer (MKMapView mapView, IMKOverlay overlay);
public virtual void RegionChanged (MKMapView mapView, bool animated);
public virtual void RegionWillChange (MKMapView mapView, bool animated);
public virtual void WillStartLoadingMap (MKMapView mapView);
public virtual void WillStartLocatingUser (MKMapView mapView);
public virtual void WillStartRenderingMap (MKMapView mapView);

Type Changed: MapKit.IMKOverlay

Modified properties:

-public abstract MKMapRect BoundingMapRect { get; }
+public virtual MKMapRect BoundingMapRect { get; }

Added property:

public virtual bool CanReplaceMapContent { get; }

Added method:

public virtual bool Intersects (MKMapRect rect);

Type Changed: MapKit.IMKReverseGeocoderDelegate

Modified methods:

-public abstract void FailedWithError (MKReverseGeocoder geocoder, Foundation.NSError error)
+public virtual void FailedWithError (MKReverseGeocoder geocoder, Foundation.NSError error)
-public abstract void FoundWithPlacemark (MKReverseGeocoder geocoder, MKPlacemark placemark)
+public virtual void FoundWithPlacemark (MKReverseGeocoder geocoder, MKPlacemark placemark)

Namespace MediaPlayer

Type Changed: MediaPlayer.IMPMediaPickerControllerDelegate

Added methods:

public virtual void MediaItemsPicked (MPMediaPickerController sender, MPMediaItemCollection mediaItemCollection);
public virtual void MediaPickerDidCancel (MPMediaPickerController sender);

Type Changed: MediaPlayer.IMPMediaPlayback

Modified properties:

-public abstract float CurrentPlaybackRate { get; set; }
+public virtual float CurrentPlaybackRate { get; set; }
-public abstract double CurrentPlaybackTime { get; set; }
+public virtual double CurrentPlaybackTime { get; set; }
-public abstract bool IsPreparedToPlay { get; }
+public virtual bool IsPreparedToPlay { get; }

Modified methods:

-public abstract void BeginSeekingBackward ()
+public virtual void BeginSeekingBackward ()
-public abstract void BeginSeekingForward ()
+public virtual void BeginSeekingForward ()
-public abstract void EndSeeking ()
+public virtual void EndSeeking ()
-public abstract void Pause ()
+public virtual void Pause ()
-public abstract void Play ()
+public virtual void Play ()
-public abstract void PrepareToPlay ()
+public virtual void PrepareToPlay ()
-public abstract void Stop ()
+public virtual void Stop ()

Type Changed: MediaPlayer.IMPNowPlayingSessionDelegate

Added methods:

public virtual void DidChangeActive (MPNowPlayingSession nowPlayingSession);
public virtual void DidChangeCanBecomeActive (MPNowPlayingSession nowPlayingSession);

Type Changed: MediaPlayer.IMPPlayableContentDataSource

Modified methods:

-public abstract MPContentItem GetContentItem (Foundation.NSIndexPath indexPath)
+public virtual MPContentItem GetContentItem (Foundation.NSIndexPath indexPath)
-public abstract IntPtr NumberOfChildItems (Foundation.NSIndexPath indexPath)
+public virtual IntPtr NumberOfChildItems (Foundation.NSIndexPath indexPath)

Added methods:

public virtual void BeginLoadingChildItems (Foundation.NSIndexPath indexPath, System.Action<Foundation.NSError> completionHandler);
public virtual bool ChildItemsDisplayPlaybackProgress (Foundation.NSIndexPath indexPath);
public virtual void GetContentItem (string identifier, System.Action<MPContentItem,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<MPContentItem> GetContentItemAsync (string identifier);

Type Changed: MediaPlayer.IMPPlayableContentDelegate

Added methods:

public virtual void ContextUpdated (MPPlayableContentManager contentManager, MPPlayableContentManagerContext context);
public virtual void InitializePlaybackQueue (MPPlayableContentManager contentManager, System.Action<Foundation.NSError> completionHandler);
public virtual void InitializePlaybackQueue (MPPlayableContentManager contentManager, MPContentItem[] contentItems, System.Action<Foundation.NSError> completionHandler);
public virtual void InitiatePlaybackOfContentItem (MPPlayableContentManager contentManager, Foundation.NSIndexPath indexPath, System.Action<Foundation.NSError> completionHandler);

Type Changed: MediaPlayer.IMPSystemMusicPlayerController

Modified methods:

-public abstract void OpenToPlay (MPMusicPlayerQueueDescriptor queueDescriptor)
+public virtual void OpenToPlay (MPMusicPlayerQueueDescriptor queueDescriptor)

Namespace MediaSetup

Type Changed: MediaSetup.IMSAuthenticationPresentationContext

Modified properties:

-public abstract UIKit.UIWindow PresentationAnchor { get; }
+public virtual UIKit.UIWindow PresentationAnchor { get; }

Namespace MessageUI

Type Changed: MessageUI.IMFMailComposeViewControllerDelegate

Added method:

public virtual void Finished (MFMailComposeViewController controller, MFMailComposeResult result, Foundation.NSError error);

Type Changed: MessageUI.IMFMessageComposeViewControllerDelegate

Modified methods:

-public abstract void Finished (MFMessageComposeViewController controller, MessageComposeResult result)
+public virtual void Finished (MFMessageComposeViewController controller, MessageComposeResult result)

Namespace Messages

Type Changed: Messages.IMSMessagesAppTranscriptPresentation

Modified methods:

-public abstract CoreGraphics.CGSize GetContentSizeThatFits (CoreGraphics.CGSize size)
+public virtual CoreGraphics.CGSize GetContentSizeThatFits (CoreGraphics.CGSize size)

Type Changed: Messages.IMSStickerBrowserViewDataSource

Modified methods:

-public abstract IntPtr GetNumberOfStickers (MSStickerBrowserView stickerBrowserView)
+public virtual IntPtr GetNumberOfStickers (MSStickerBrowserView stickerBrowserView)
-public abstract MSSticker GetSticker (MSStickerBrowserView stickerBrowserView, IntPtr index)
+public virtual MSSticker GetSticker (MSStickerBrowserView stickerBrowserView, IntPtr index)

Namespace Metal

Type Changed: Metal.IMTLAccelerationStructure

Modified properties:

-public abstract UIntPtr Size { get; }
+public virtual UIntPtr Size { get; }

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Type Changed: Metal.IMTLAccelerationStructureCommandEncoder

Modified methods:

-public abstract void BuildAccelerationStructure (IMTLAccelerationStructure accelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset)
+public virtual void BuildAccelerationStructure (IMTLAccelerationStructure accelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset)
-public abstract void CopyAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure)
+public virtual void CopyAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure)
-public abstract void CopyAndCompactAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure)
+public virtual void CopyAndCompactAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure)
-public abstract void RefitAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset)
+public virtual void RefitAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset)
-public abstract void SampleCountersInBuffer (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
+public virtual void SampleCountersInBuffer (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
-public abstract void UpdateFence (IMTLFence fence)
+public virtual void UpdateFence (IMTLFence fence)
-public abstract void UseHeap (IMTLHeap heap)
+public virtual void UseHeap (IMTLHeap heap)
-public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
+public virtual void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
-public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage)
+public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage)
-public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
+public virtual void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
-public abstract void WaitForFence (IMTLFence fence)
+public virtual void WaitForFence (IMTLFence fence)
-public abstract void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset)
+public virtual void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset)
-public abstract void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset, MTLDataType sizeDataType)
+public virtual void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset, MTLDataType sizeDataType)

Added method:

public virtual void RefitAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset, MTLAccelerationStructureRefitOptions options);

Type Changed: Metal.IMTLArgumentEncoder

Modified properties:

-public abstract UIntPtr Alignment { get; }
+public virtual UIntPtr Alignment { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract UIntPtr EncodedLength { get; }
+public virtual UIntPtr EncodedLength { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr index)
+public virtual IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr index)
-public abstract IntPtr GetConstantData (UIntPtr index)
+public virtual IntPtr GetConstantData (UIntPtr index)
-public abstract void SetAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr index)
+public virtual void SetAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr index)
-public abstract void SetArgumentBuffer (IMTLBuffer argumentBuffer, UIntPtr offset)
+public virtual void SetArgumentBuffer (IMTLBuffer argumentBuffer, UIntPtr offset)
-public abstract void SetArgumentBuffer (IMTLBuffer argumentBuffer, UIntPtr startOffset, UIntPtr arrayElement)
+public virtual void SetArgumentBuffer (IMTLBuffer argumentBuffer, UIntPtr startOffset, UIntPtr arrayElement)
-public abstract void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
+public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
-public abstract void SetComputePipelineState (IMTLComputePipelineState pipeline, UIntPtr index)
+public virtual void SetComputePipelineState (IMTLComputePipelineState pipeline, UIntPtr index)
-public abstract void SetComputePipelineStates (IMTLComputePipelineState[] pipelines, Foundation.NSRange range)
+public virtual void SetComputePipelineStates (IMTLComputePipelineState[] pipelines, Foundation.NSRange range)
-public abstract void SetIndirectCommandBuffer (IMTLIndirectCommandBuffer indirectCommandBuffer, UIntPtr index)
+public virtual void SetIndirectCommandBuffer (IMTLIndirectCommandBuffer indirectCommandBuffer, UIntPtr index)
-public abstract void SetIndirectCommandBuffers (IMTLIndirectCommandBuffer[] buffers, Foundation.NSRange range)
+public virtual void SetIndirectCommandBuffers (IMTLIndirectCommandBuffer[] buffers, Foundation.NSRange range)
-public abstract void SetIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr index)
+public virtual void SetIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr index)
-public abstract void SetIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range)
+public virtual void SetIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range)
-public abstract void SetRenderPipelineState (IMTLRenderPipelineState pipeline, UIntPtr index)
+public virtual void SetRenderPipelineState (IMTLRenderPipelineState pipeline, UIntPtr index)
-public abstract void SetRenderPipelineStates (IMTLRenderPipelineState[] pipelines, Foundation.NSRange range)
+public virtual void SetRenderPipelineStates (IMTLRenderPipelineState[] pipelines, Foundation.NSRange range)
-public abstract void SetSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetVisibleFunctionTable (IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr index)
+public virtual void SetVisibleFunctionTable (IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr index)
-public abstract void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range)
+public virtual void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range)

Type Changed: Metal.IMTLBinaryArchive

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract bool AddComputePipelineFunctions (MTLComputePipelineDescriptor descriptor, out Foundation.NSError error)
+public virtual bool AddComputePipelineFunctions (MTLComputePipelineDescriptor descriptor, out Foundation.NSError error)
-public abstract bool AddFunctionWithDescriptor (MTLFunctionDescriptor descriptor, IMTLLibrary library, out Foundation.NSError error)
+public virtual bool AddFunctionWithDescriptor (MTLFunctionDescriptor descriptor, IMTLLibrary library, out Foundation.NSError error)
-public abstract bool AddRenderPipelineFunctions (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error)
+public virtual bool AddRenderPipelineFunctions (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error)
-public abstract bool AddTileRenderPipelineFunctions (MTLTileRenderPipelineDescriptor descriptor, out Foundation.NSError error)
+public virtual bool AddTileRenderPipelineFunctions (MTLTileRenderPipelineDescriptor descriptor, out Foundation.NSError error)
-public abstract bool Serialize (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual bool Serialize (Foundation.NSUrl url, out Foundation.NSError error)

Type Changed: Metal.IMTLBlitCommandEncoder

Modified methods:

-public abstract void Copy (IMTLTexture sourceTexture, IMTLTexture destinationTexture)
+public virtual void Copy (IMTLTexture sourceTexture, IMTLTexture destinationTexture)
-public abstract void Copy (IMTLIndirectCommandBuffer source, Foundation.NSRange sourceRange, IMTLIndirectCommandBuffer destination, UIntPtr destinationIndex)
+public virtual void Copy (IMTLIndirectCommandBuffer source, Foundation.NSRange sourceRange, IMTLIndirectCommandBuffer destination, UIntPtr destinationIndex)
-public abstract void Copy (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, UIntPtr sliceCount, UIntPtr levelCount)
+public virtual void Copy (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, UIntPtr sliceCount, UIntPtr levelCount)
-public abstract void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr size)
+public virtual void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr size)
-public abstract void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, UIntPtr sourceBytesPerRow, UIntPtr sourceBytesPerImage, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin)
+public virtual void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, UIntPtr sourceBytesPerRow, UIntPtr sourceBytesPerImage, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin)
-public abstract void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, UIntPtr sourceBytesPerRow, UIntPtr sourceBytesPerImage, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin, MTLBlitOption options)
+public virtual void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, UIntPtr sourceBytesPerRow, UIntPtr sourceBytesPerImage, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin, MTLBlitOption options)
-public abstract void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr destinatinBytesPerRow, UIntPtr destinationBytesPerImage)
+public virtual void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr destinatinBytesPerRow, UIntPtr destinationBytesPerImage)
-public abstract void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin)
+public virtual void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin)
-public abstract void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr destinatinBytesPerRow, UIntPtr destinationBytesPerImage, MTLBlitOption options)
+public virtual void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr destinatinBytesPerRow, UIntPtr destinationBytesPerImage, MTLBlitOption options)
-public abstract void FillBuffer (IMTLBuffer buffer, Foundation.NSRange range, byte value)
+public virtual void FillBuffer (IMTLBuffer buffer, Foundation.NSRange range, byte value)
-public abstract void GenerateMipmapsForTexture (IMTLTexture texture)
+public virtual void GenerateMipmapsForTexture (IMTLTexture texture)
-public abstract void GetTextureAccessCounters (IMTLTexture texture, MTLRegion region, UIntPtr mipLevel, UIntPtr slice, bool resetCounters, IMTLBuffer countersBuffer, UIntPtr countersBufferOffset)
+public virtual void GetTextureAccessCounters (IMTLTexture texture, MTLRegion region, UIntPtr mipLevel, UIntPtr slice, bool resetCounters, IMTLBuffer countersBuffer, UIntPtr countersBufferOffset)
-public abstract void Optimize (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange range)
+public virtual void Optimize (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange range)
-public abstract void OptimizeContentsForCpuAccess (IMTLTexture texture)
+public virtual void OptimizeContentsForCpuAccess (IMTLTexture texture)
-public abstract void OptimizeContentsForCpuAccess (IMTLTexture texture, UIntPtr slice, UIntPtr level)
+public virtual void OptimizeContentsForCpuAccess (IMTLTexture texture, UIntPtr slice, UIntPtr level)
-public abstract void OptimizeContentsForGpuAccess (IMTLTexture texture)
+public virtual void OptimizeContentsForGpuAccess (IMTLTexture texture)
-public abstract void OptimizeContentsForGpuAccess (IMTLTexture texture, UIntPtr slice, UIntPtr level)
+public virtual void OptimizeContentsForGpuAccess (IMTLTexture texture, UIntPtr slice, UIntPtr level)
-public abstract void ResetCommands (IMTLIndirectCommandBuffer buffer, Foundation.NSRange range)
+public virtual void ResetCommands (IMTLIndirectCommandBuffer buffer, Foundation.NSRange range)
-public abstract void ResetTextureAccessCounters (IMTLTexture texture, MTLRegion region, UIntPtr mipLevel, UIntPtr slice)
+public virtual void ResetTextureAccessCounters (IMTLTexture texture, MTLRegion region, UIntPtr mipLevel, UIntPtr slice)
-public abstract void ResolveCounters (IMTLCounterSampleBuffer sampleBuffer, Foundation.NSRange range, IMTLBuffer destinationBuffer, UIntPtr destinationOffset)
+public virtual void ResolveCounters (IMTLCounterSampleBuffer sampleBuffer, Foundation.NSRange range, IMTLBuffer destinationBuffer, UIntPtr destinationOffset)
-public abstract void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
+public virtual void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
-public abstract void Update (IMTLFence fence)
+public virtual void Update (IMTLFence fence)
-public abstract void Wait (IMTLFence fence)
+public virtual void Wait (IMTLFence fence)

Type Changed: Metal.IMTLBuffer

Modified properties:

-public abstract IntPtr Contents { get; }
+public virtual IntPtr Contents { get; }
-public abstract UIntPtr Length { get; }
+public virtual UIntPtr Length { get; }

Added property:

public virtual ulong GpuAddress { get; }

Modified methods:

-public abstract void AddDebugMarker (string marker, Foundation.NSRange range)
+public virtual void AddDebugMarker (string marker, Foundation.NSRange range)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, UIntPtr offset, UIntPtr bytesPerRow)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, UIntPtr offset, UIntPtr bytesPerRow)
-public abstract void RemoveAllDebugMarkers ()
+public virtual void RemoveAllDebugMarkers ()

Type Changed: Metal.IMTLCaptureScope

Modified properties:

-public abstract IMTLCommandQueue CommandQueue { get; }
+public virtual IMTLCommandQueue CommandQueue { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract void BeginScope ()
+public virtual void BeginScope ()
-public abstract void EndScope ()
+public virtual void EndScope ()

Type Changed: Metal.IMTLCommandBuffer

Modified properties:

-public abstract IMTLBlitCommandEncoder BlitCommandEncoder { get; }
+public virtual IMTLBlitCommandEncoder BlitCommandEncoder { get; }
-public abstract IMTLCommandQueue CommandQueue { get; }
+public virtual IMTLCommandQueue CommandQueue { get; }
-public abstract IMTLComputeCommandEncoder ComputeCommandEncoder { get; }
+public virtual IMTLComputeCommandEncoder ComputeCommandEncoder { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract Foundation.NSError Error { get; }
+public virtual Foundation.NSError Error { get; }
-public abstract MTLCommandBufferErrorOption ErrorOptions { get; }
+public virtual MTLCommandBufferErrorOption ErrorOptions { get; }
-public abstract double GpuEndTime { get; }
+public virtual double GpuEndTime { get; }
-public abstract double GpuStartTime { get; }
+public virtual double GpuStartTime { get; }
-public abstract double KernelEndTime { get; }
+public virtual double KernelEndTime { get; }
-public abstract double KernelStartTime { get; }
+public virtual double KernelStartTime { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract IMTLLogContainer Logs { get; }
+public virtual IMTLLogContainer Logs { get; }
-public abstract IMTLResourceStateCommandEncoder ResourceStateCommandEncoder { get; }
+public virtual IMTLResourceStateCommandEncoder ResourceStateCommandEncoder { get; }
-public abstract bool RetainedReferences { get; }
+public virtual bool RetainedReferences { get; }
-public abstract MTLCommandBufferStatus Status { get; }
+public virtual MTLCommandBufferStatus Status { get; }

Modified methods:

-public abstract void AddCompletedHandler (System.Action%LESSERTHANREPLACEMENT%IMTLCommandBuffer%GREATERTHANREPLACEMENT% block)
+public virtual void AddCompletedHandler (System.Action%LESSERTHANREPLACEMENT%IMTLCommandBuffer%GREATERTHANREPLACEMENT% block)
-public abstract void AddScheduledHandler (System.Action%LESSERTHANREPLACEMENT%IMTLCommandBuffer%GREATERTHANREPLACEMENT% block)
+public virtual void AddScheduledHandler (System.Action%LESSERTHANREPLACEMENT%IMTLCommandBuffer%GREATERTHANREPLACEMENT% block)
-public abstract void Commit ()
+public virtual void Commit ()
-public abstract IMTLComputeCommandEncoder ComputeCommandEncoderDispatch (MTLDispatchType dispatchType)
+public virtual IMTLComputeCommandEncoder ComputeCommandEncoderDispatch (MTLDispatchType dispatchType)
-public abstract IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder ()
+public virtual IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder ()
-public abstract IMTLBlitCommandEncoder CreateBlitCommandEncoder (MTLBlitPassDescriptor blitPassDescriptor)
+public virtual IMTLBlitCommandEncoder CreateBlitCommandEncoder (MTLBlitPassDescriptor blitPassDescriptor)
-public abstract IMTLComputeCommandEncoder CreateComputeCommandEncoder (MTLComputePassDescriptor computePassDescriptor)
+public virtual IMTLComputeCommandEncoder CreateComputeCommandEncoder (MTLComputePassDescriptor computePassDescriptor)
-public abstract IMTLParallelRenderCommandEncoder CreateParallelRenderCommandEncoder (MTLRenderPassDescriptor renderPassDescriptor)
+public virtual IMTLParallelRenderCommandEncoder CreateParallelRenderCommandEncoder (MTLRenderPassDescriptor renderPassDescriptor)
-public abstract IMTLRenderCommandEncoder CreateRenderCommandEncoder (MTLRenderPassDescriptor renderPassDescriptor)
+public virtual IMTLRenderCommandEncoder CreateRenderCommandEncoder (MTLRenderPassDescriptor renderPassDescriptor)
-public abstract IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (MTLResourceStatePassDescriptor resourceStatePassDescriptor)
+public virtual IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (MTLResourceStatePassDescriptor resourceStatePassDescriptor)
-public abstract void EncodeSignal (IMTLEvent event, ulong value)
+public virtual void EncodeSignal (IMTLEvent event, ulong value)
-public abstract void EncodeWait (IMTLEvent event, ulong value)
+public virtual void EncodeWait (IMTLEvent event, ulong value)
-public abstract void Enqueue ()
+public virtual void Enqueue ()
-public abstract void PopDebugGroup ()
+public virtual void PopDebugGroup ()
-public abstract void PresentDrawable (IMTLDrawable drawable)
+public virtual void PresentDrawable (IMTLDrawable drawable)
-public abstract void PresentDrawable (IMTLDrawable drawable, double presentationTime)
+public virtual void PresentDrawable (IMTLDrawable drawable, double presentationTime)
-public abstract void PresentDrawableAfter (IMTLDrawable drawable, double duration)
+public virtual void PresentDrawableAfter (IMTLDrawable drawable, double duration)
-public abstract void PushDebugGroup (string string)
+public virtual void PushDebugGroup (string string)
-public abstract void WaitUntilCompleted ()
+public virtual void WaitUntilCompleted ()
-public abstract void WaitUntilScheduled ()
+public virtual void WaitUntilScheduled ()

Added method:

public virtual IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (MTLAccelerationStructurePassDescriptor descriptor);

Type Changed: Metal.IMTLCommandBufferEncoderInfo

Modified properties:

-public abstract string[] DebugSignposts { get; }
+public virtual string[] DebugSignposts { get; }
-public abstract MTLCommandEncoderErrorState ErrorState { get; }
+public virtual MTLCommandEncoderErrorState ErrorState { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }

Type Changed: Metal.IMTLCommandEncoder

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract void EndEncoding ()
+public virtual void EndEncoding ()
-public abstract void InsertDebugSignpost (string signpost)
+public virtual void InsertDebugSignpost (string signpost)
-public abstract void PopDebugGroup ()
+public virtual void PopDebugGroup ()
-public abstract void PushDebugGroup (string debugGroup)
+public virtual void PushDebugGroup (string debugGroup)

Type Changed: Metal.IMTLCommandQueue

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract IMTLCommandBuffer CommandBuffer ()
+public virtual IMTLCommandBuffer CommandBuffer ()
-public abstract IMTLCommandBuffer CommandBufferWithUnretainedReferences ()
+public virtual IMTLCommandBuffer CommandBufferWithUnretainedReferences ()
-public abstract IMTLCommandBuffer CreateCommandBuffer (MTLCommandBufferDescriptor descriptor)
+public virtual IMTLCommandBuffer CreateCommandBuffer (MTLCommandBufferDescriptor descriptor)
-public abstract void InsertDebugCaptureBoundary ()
+public virtual void InsertDebugCaptureBoundary ()

Type Changed: Metal.IMTLComputeCommandEncoder

Modified properties:

-public abstract MTLDispatchType DispatchType { get; }
+public virtual MTLDispatchType DispatchType { get; }

Modified methods:

-public abstract void DispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup)
+public virtual void DispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup)
-public abstract void DispatchThreadgroups (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerThreadgroup)
+public virtual void DispatchThreadgroups (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerThreadgroup)
-public abstract void DispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup)
+public virtual void DispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup)
-public abstract void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange)
+public virtual void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange)
-public abstract void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, UIntPtr indirectBufferOffset)
+public virtual void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, UIntPtr indirectBufferOffset)
-public abstract void MemoryBarrier (MTLBarrierScope scope)
+public virtual void MemoryBarrier (MTLBarrierScope scope)
-public abstract void MemoryBarrier (IMTLResource[] resources, UIntPtr count)
+public virtual void MemoryBarrier (IMTLResource[] resources, UIntPtr count)
-public abstract void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
+public virtual void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
-public abstract void SetAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
+public virtual void SetAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
-public abstract void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetBufferOffset (UIntPtr offset, UIntPtr index)
+public virtual void SetBufferOffset (UIntPtr offset, UIntPtr index)
-public abstract void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
+public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
-public abstract void SetBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
+public virtual void SetBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
-public abstract void SetComputePipelineState (IMTLComputePipelineState state)
+public virtual void SetComputePipelineState (IMTLComputePipelineState state)
-public abstract void SetImageblock (UIntPtr width, UIntPtr height)
+public virtual void SetImageblock (UIntPtr width, UIntPtr height)
-public abstract void SetIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
+public virtual void SetIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
-public abstract void SetIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range)
+public virtual void SetIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range)
-public abstract void SetSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
+public virtual void SetSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
-public abstract void SetSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
+public virtual void SetSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
-public abstract void SetStage (MTLRegion region)
+public virtual void SetStage (MTLRegion region)
-public abstract void SetStageInRegion (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void SetStageInRegion (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void SetTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr index)
+public virtual void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr index)
-public abstract void SetVisibleFunctionTable (IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr bufferIndex)
+public virtual void SetVisibleFunctionTable (IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr bufferIndex)
-public abstract void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range)
+public virtual void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range)
-public abstract void Update (IMTLFence fence)
+public virtual void Update (IMTLFence fence)
-public abstract void UseHeap (IMTLHeap heap)
+public virtual void UseHeap (IMTLHeap heap)
-public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
+public virtual void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
-public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage)
+public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage)
-public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
+public virtual void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
-public abstract void Wait (IMTLFence fence)
+public virtual void Wait (IMTLFence fence)

Added methods:

public virtual void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
public virtual void SetBufferOffset (UIntPtr offset, UIntPtr stride, UIntPtr index);
public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range);
public virtual void SetBytes (IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index);

Type Changed: Metal.IMTLComputePipelineState

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr MaxTotalThreadsPerThreadgroup { get; }
+public virtual UIntPtr MaxTotalThreadsPerThreadgroup { get; }
-public abstract UIntPtr StaticThreadgroupMemoryLength { get; }
+public virtual UIntPtr StaticThreadgroupMemoryLength { get; }
-public abstract bool SupportIndirectCommandBuffers { get; }
+public virtual bool SupportIndirectCommandBuffers { get; }
-public abstract UIntPtr ThreadExecutionWidth { get; }
+public virtual UIntPtr ThreadExecutionWidth { get; }

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Modified methods:

-public abstract IMTLComputePipelineState CreateComputePipelineState (IMTLFunction[] functions, out Foundation.NSError error)
+public virtual IMTLComputePipelineState CreateComputePipelineState (IMTLFunction[] functions, out Foundation.NSError error)
-public abstract IMTLFunctionHandle CreateFunctionHandle (IMTLFunction function)
+public virtual IMTLFunctionHandle CreateFunctionHandle (IMTLFunction function)
-public abstract IMTLIntersectionFunctionTable CreateIntersectionFunctionTable (MTLIntersectionFunctionTableDescriptor descriptor)
+public virtual IMTLIntersectionFunctionTable CreateIntersectionFunctionTable (MTLIntersectionFunctionTableDescriptor descriptor)
-public abstract IMTLVisibleFunctionTable CreateVisibleFunctionTable (MTLVisibleFunctionTableDescriptor descriptor)
+public virtual IMTLVisibleFunctionTable CreateVisibleFunctionTable (MTLVisibleFunctionTableDescriptor descriptor)
-public abstract UIntPtr GetImageblockMemoryLength (MTLSize imageblockDimensions)
+public virtual UIntPtr GetImageblockMemoryLength (MTLSize imageblockDimensions)

Type Changed: Metal.IMTLCounter

Modified properties:

-public abstract string Name { get; }
+public virtual string Name { get; }

Type Changed: Metal.IMTLCounterSampleBuffer

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr SampleCount { get; }
+public virtual UIntPtr SampleCount { get; }

Modified methods:

-public abstract Foundation.NSData ResolveCounterRange (Foundation.NSRange range)
+public virtual Foundation.NSData ResolveCounterRange (Foundation.NSRange range)

Type Changed: Metal.IMTLCounterSet

Modified properties:

-public abstract IMTLCounter[] Counters { get; }
+public virtual IMTLCounter[] Counters { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }

Type Changed: Metal.IMTLDepthStencilState

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }

Type Changed: Metal.IMTLDevice

Modified properties:

-public abstract MTLArgumentBuffersTier ArgumentBuffersSupport { get; }
+public virtual MTLArgumentBuffersTier ArgumentBuffersSupport { get; }
-public abstract bool BarycentricCoordsSupported { get; }
+public virtual bool BarycentricCoordsSupported { get; }
-public abstract IMTLCounterSet[] CounterSets { get; }
+public virtual IMTLCounterSet[] CounterSets { get; }
-public abstract UIntPtr CurrentAllocatedSize { get; }
+public virtual UIntPtr CurrentAllocatedSize { get; }
-public abstract bool HasUnifiedMemory { get; }
+public virtual bool HasUnifiedMemory { get; }
-public abstract UIntPtr MaxArgumentBufferSamplerCount { get; }
+public virtual UIntPtr MaxArgumentBufferSamplerCount { get; }
-public abstract UIntPtr MaxBufferLength { get; }
+public virtual UIntPtr MaxBufferLength { get; }
-public abstract UIntPtr MaxThreadgroupMemoryLength { get; }
+public virtual UIntPtr MaxThreadgroupMemoryLength { get; }
-public abstract MTLSize MaxThreadsPerThreadgroup { get; }
+public virtual MTLSize MaxThreadsPerThreadgroup { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }
-public abstract bool ProgrammableSamplePositionsSupported { get; }
+public virtual bool ProgrammableSamplePositionsSupported { get; }
-public abstract bool RasterOrderGroupsSupported { get; }
+public virtual bool RasterOrderGroupsSupported { get; }
-public abstract MTLReadWriteTextureTier ReadWriteTextureSupport { get; }
+public virtual MTLReadWriteTextureTier ReadWriteTextureSupport { get; }
-public abstract ulong RegistryId { get; }
+public virtual ulong RegistryId { get; }
-public abstract UIntPtr SparseTileSizeInBytes { get; }
+public virtual UIntPtr SparseTileSizeInBytes { get; }
-public abstract bool Supports32BitFloatFiltering { get; }
+public virtual bool Supports32BitFloatFiltering { get; }
-public abstract bool Supports32BitMsaa { get; }
+public virtual bool Supports32BitMsaa { get; }
-public abstract bool SupportsDynamicLibraries { get; }
+public virtual bool SupportsDynamicLibraries { get; }
-public abstract bool SupportsFunctionPointers { get; }
+public virtual bool SupportsFunctionPointers { get; }
-public abstract bool SupportsFunctionPointersFromRender { get; }
+public virtual bool SupportsFunctionPointersFromRender { get; }
-public abstract bool SupportsPrimitiveMotionBlur { get; }
+public virtual bool SupportsPrimitiveMotionBlur { get; }
-public abstract bool SupportsPullModelInterpolation { get; }
+public virtual bool SupportsPullModelInterpolation { get; }
-public abstract bool SupportsQueryTextureLod { get; }
+public virtual bool SupportsQueryTextureLod { get; }
-public abstract bool SupportsRaytracing { get; }
+public virtual bool SupportsRaytracing { get; }
-public abstract bool SupportsRaytracingFromRender { get; }
+public virtual bool SupportsRaytracingFromRender { get; }
-public abstract bool SupportsRenderDynamicLibraries { get; }
+public virtual bool SupportsRenderDynamicLibraries { get; }
-public abstract bool SupportsShaderBarycentricCoordinates { get; }
+public virtual bool SupportsShaderBarycentricCoordinates { get; }

Added properties:

public virtual MTLArchitecture Architecture { get; }
public virtual ulong RecommendedMaxWorkingSetSize { get; }
public virtual bool SupportsBCTextureCompression { get; }

Modified methods:

-public abstract IMTLAccelerationStructure CreateAccelerationStructure (MTLAccelerationStructureDescriptor descriptor)
+public virtual IMTLAccelerationStructure CreateAccelerationStructure (MTLAccelerationStructureDescriptor descriptor)
-public abstract IMTLAccelerationStructure CreateAccelerationStructure (UIntPtr size)
+public virtual IMTLAccelerationStructure CreateAccelerationStructure (UIntPtr size)
-public abstract MTLAccelerationStructureSizes CreateAccelerationStructureSizes (MTLAccelerationStructureDescriptor descriptor)
+public virtual MTLAccelerationStructureSizes CreateAccelerationStructureSizes (MTLAccelerationStructureDescriptor descriptor)
-public abstract IMTLArgumentEncoder CreateArgumentEncoder (MTLArgumentDescriptor[] arguments)
+public virtual IMTLArgumentEncoder CreateArgumentEncoder (MTLArgumentDescriptor[] arguments)
-public abstract IMTLBinaryArchive CreateBinaryArchive (MTLBinaryArchiveDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLBinaryArchive CreateBinaryArchive (MTLBinaryArchiveDescriptor descriptor, out Foundation.NSError error)
-public abstract IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options)
+public virtual IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options)
-public abstract IMTLBuffer CreateBuffer (IntPtr pointer, UIntPtr length, MTLResourceOptions options)
+public virtual IMTLBuffer CreateBuffer (IntPtr pointer, UIntPtr length, MTLResourceOptions options)
-public abstract IMTLBuffer CreateBufferNoCopy (IntPtr pointer, UIntPtr length, MTLResourceOptions options, MTLDeallocator deallocator)
+public virtual IMTLBuffer CreateBufferNoCopy (IntPtr pointer, UIntPtr length, MTLResourceOptions options, MTLDeallocator deallocator)
-public abstract IMTLCommandQueue CreateCommandQueue ()
+public virtual IMTLCommandQueue CreateCommandQueue ()
-public abstract IMTLCommandQueue CreateCommandQueue (UIntPtr maxCommandBufferCount)
+public virtual IMTLCommandQueue CreateCommandQueue (UIntPtr maxCommandBufferCount)
-public abstract void CreateComputePipelineState (IMTLFunction computeFunction, System.Action%LESSERTHANREPLACEMENT%IMTLComputePipelineState,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateComputePipelineState (IMTLFunction computeFunction, System.Action%LESSERTHANREPLACEMENT%IMTLComputePipelineState,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLComputePipelineState CreateComputePipelineState (IMTLFunction computeFunction, out Foundation.NSError error)
+public virtual IMTLComputePipelineState CreateComputePipelineState (IMTLFunction computeFunction, out Foundation.NSError error)
-public abstract void CreateComputePipelineState (IMTLFunction computeFunction, MTLPipelineOption options, System.Action%LESSERTHANREPLACEMENT%IMTLComputePipelineState,Metal.MTLComputePipelineReflection,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateComputePipelineState (IMTLFunction computeFunction, MTLPipelineOption options, System.Action%LESSERTHANREPLACEMENT%IMTLComputePipelineState,Metal.MTLComputePipelineReflection,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void CreateComputePipelineState (MTLComputePipelineDescriptor descriptor, MTLPipelineOption options, MTLNewComputePipelineStateWithReflectionCompletionHandler completionHandler)
+public virtual void CreateComputePipelineState (MTLComputePipelineDescriptor descriptor, MTLPipelineOption options, MTLNewComputePipelineStateWithReflectionCompletionHandler completionHandler)
-public abstract IMTLComputePipelineState CreateComputePipelineState (IMTLFunction computeFunction, MTLPipelineOption options, out MTLComputePipelineReflection reflection, out Foundation.NSError error)
+public virtual IMTLComputePipelineState CreateComputePipelineState (IMTLFunction computeFunction, MTLPipelineOption options, out MTLComputePipelineReflection reflection, out Foundation.NSError error)
-public abstract IMTLComputePipelineState CreateComputePipelineState (MTLComputePipelineDescriptor descriptor, MTLPipelineOption options, out MTLComputePipelineReflection reflection, out Foundation.NSError error)
+public virtual IMTLComputePipelineState CreateComputePipelineState (MTLComputePipelineDescriptor descriptor, MTLPipelineOption options, out MTLComputePipelineReflection reflection, out Foundation.NSError error)
-public abstract IMTLCounterSampleBuffer CreateCounterSampleBuffer (MTLCounterSampleBufferDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLCounterSampleBuffer CreateCounterSampleBuffer (MTLCounterSampleBufferDescriptor descriptor, out Foundation.NSError error)
-public abstract IMTLLibrary CreateDefaultLibrary ()
+public virtual IMTLLibrary CreateDefaultLibrary ()
-public abstract IMTLLibrary CreateDefaultLibrary (Foundation.NSBundle bundle, out Foundation.NSError error)
+public virtual IMTLLibrary CreateDefaultLibrary (Foundation.NSBundle bundle, out Foundation.NSError error)
-public abstract IMTLDepthStencilState CreateDepthStencilState (MTLDepthStencilDescriptor descriptor)
+public virtual IMTLDepthStencilState CreateDepthStencilState (MTLDepthStencilDescriptor descriptor)
-public abstract IMTLDynamicLibrary CreateDynamicLibrary (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual IMTLDynamicLibrary CreateDynamicLibrary (Foundation.NSUrl url, out Foundation.NSError error)
-public abstract IMTLDynamicLibrary CreateDynamicLibrary (IMTLLibrary library, out Foundation.NSError error)
+public virtual IMTLDynamicLibrary CreateDynamicLibrary (IMTLLibrary library, out Foundation.NSError error)
-public abstract IMTLEvent CreateEvent ()
+public virtual IMTLEvent CreateEvent ()
-public abstract IMTLFence CreateFence ()
+public virtual IMTLFence CreateFence ()
-public abstract IMTLHeap CreateHeap (MTLHeapDescriptor descriptor)
+public virtual IMTLHeap CreateHeap (MTLHeapDescriptor descriptor)
-public abstract IMTLIndirectCommandBuffer CreateIndirectCommandBuffer (MTLIndirectCommandBufferDescriptor descriptor, UIntPtr maxCount, MTLResourceOptions options)
+public virtual IMTLIndirectCommandBuffer CreateIndirectCommandBuffer (MTLIndirectCommandBufferDescriptor descriptor, UIntPtr maxCount, MTLResourceOptions options)
-public abstract IMTLLibrary CreateLibrary (CoreFoundation.DispatchData data, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (CoreFoundation.DispatchData data, out Foundation.NSError error)
-public abstract IMTLLibrary CreateLibrary (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (Foundation.NSUrl url, out Foundation.NSError error)
-public abstract void CreateLibrary (MTLStitchedLibraryDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLLibrary,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateLibrary (MTLStitchedLibraryDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLLibrary,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLLibrary CreateLibrary (MTLStitchedLibraryDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (MTLStitchedLibraryDescriptor descriptor, out Foundation.NSError error)
-public abstract IMTLLibrary CreateLibrary (string filepath, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (string filepath, out Foundation.NSError error)
-public abstract void CreateLibrary (string source, MTLCompileOptions options, System.Action%LESSERTHANREPLACEMENT%IMTLLibrary,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateLibrary (string source, MTLCompileOptions options, System.Action%LESSERTHANREPLACEMENT%IMTLLibrary,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLLibrary CreateLibrary (string source, MTLCompileOptions options, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (string source, MTLCompileOptions options, out Foundation.NSError error)
-public abstract IMTLRasterizationRateMap CreateRasterizationRateMap (MTLRasterizationRateMapDescriptor descriptor)
+public virtual IMTLRasterizationRateMap CreateRasterizationRateMap (MTLRasterizationRateMapDescriptor descriptor)
-public abstract void CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLRenderPipelineState,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLRenderPipelineState,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLRenderPipelineState CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLRenderPipelineState CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error)
-public abstract void CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, MTLPipelineOption options, System.Action%LESSERTHANREPLACEMENT%IMTLRenderPipelineState,Metal.MTLRenderPipelineReflection,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, MTLPipelineOption options, System.Action%LESSERTHANREPLACEMENT%IMTLRenderPipelineState,Metal.MTLRenderPipelineReflection,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void CreateRenderPipelineState (MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler)
+public virtual void CreateRenderPipelineState (MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler)
-public abstract IMTLRenderPipelineState CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error)
+public virtual IMTLRenderPipelineState CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error)
-public abstract IMTLRenderPipelineState CreateRenderPipelineState (MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error)
+public virtual IMTLRenderPipelineState CreateRenderPipelineState (MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error)
-public abstract IMTLSamplerState CreateSamplerState (MTLSamplerDescriptor descriptor)
+public virtual IMTLSamplerState CreateSamplerState (MTLSamplerDescriptor descriptor)
-public abstract IMTLSharedEvent CreateSharedEvent ()
+public virtual IMTLSharedEvent CreateSharedEvent ()
-public abstract IMTLSharedEvent CreateSharedEvent (MTLSharedEventHandle sharedEventHandle)
+public virtual IMTLSharedEvent CreateSharedEvent (MTLSharedEventHandle sharedEventHandle)
-public abstract IMTLTexture CreateSharedTexture (MTLSharedTextureHandle sharedHandle)
+public virtual IMTLTexture CreateSharedTexture (MTLSharedTextureHandle sharedHandle)
-public abstract IMTLTexture CreateSharedTexture (MTLTextureDescriptor descriptor)
+public virtual IMTLTexture CreateSharedTexture (MTLTextureDescriptor descriptor)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor descriptor)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor descriptor)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, IOSurface.IOSurface iosurface, UIntPtr plane)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, IOSurface.IOSurface iosurface, UIntPtr plane)
-public abstract void GetDefaultSamplePositions (IntPtr positions, UIntPtr count)
+public virtual void GetDefaultSamplePositions (IntPtr positions, UIntPtr count)
-public abstract MTLSizeAndAlign GetHeapBufferSizeAndAlignWithLength (UIntPtr length, MTLResourceOptions options)
+public virtual MTLSizeAndAlign GetHeapBufferSizeAndAlignWithLength (UIntPtr length, MTLResourceOptions options)
-public abstract MTLSizeAndAlign GetHeapTextureSizeAndAlign (MTLTextureDescriptor desc)
+public virtual MTLSizeAndAlign GetHeapTextureSizeAndAlign (MTLTextureDescriptor desc)
-public abstract UIntPtr GetMinimumLinearTextureAlignment (MTLPixelFormat format)
+public virtual UIntPtr GetMinimumLinearTextureAlignment (MTLPixelFormat format)
-public abstract UIntPtr GetMinimumTextureBufferAlignment (MTLPixelFormat format)
+public virtual UIntPtr GetMinimumTextureBufferAlignment (MTLPixelFormat format)
-public abstract void GetSampleTimestamps (UIntPtr cpuTimestamp, UIntPtr gpuTimestamp)
+public virtual void GetSampleTimestamps (UIntPtr cpuTimestamp, UIntPtr gpuTimestamp)
-public abstract MTLSize GetSparseTileSize (MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount)
+public virtual MTLSize GetSparseTileSize (MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount)
-public abstract bool SupportsCounterSampling (MTLCounterSamplingPoint samplingPoint)
+public virtual bool SupportsCounterSampling (MTLCounterSamplingPoint samplingPoint)
-public abstract bool SupportsFamily (MTLGpuFamily gpuFamily)
+public virtual bool SupportsFamily (MTLGpuFamily gpuFamily)
-public abstract bool SupportsFeatureSet (MTLFeatureSet featureSet)
+public virtual bool SupportsFeatureSet (MTLFeatureSet featureSet)
-public abstract bool SupportsRasterizationRateMap (UIntPtr layerCount)
+public virtual bool SupportsRasterizationRateMap (UIntPtr layerCount)
-public abstract bool SupportsTextureSampleCount (UIntPtr sampleCount)
+public virtual bool SupportsTextureSampleCount (UIntPtr sampleCount)
-public abstract bool SupportsVertexAmplification (UIntPtr count)
+public virtual bool SupportsVertexAmplification (UIntPtr count)

Added methods:

public virtual void ConvertSparsePixelRegions (IntPtr pixelRegions, IntPtr tileRegions, MTLSize tileSize, MTLSparseTextureRegionAlignmentMode mode, UIntPtr numRegions);
public virtual void ConvertSparseTileRegions (IntPtr tileRegions, IntPtr pixelRegions, MTLSize tileSize, UIntPtr numRegions);
public virtual IMTLArgumentEncoder CreateArgumentEncoder (IMTLBufferBinding bufferBinding);
public virtual System.Threading.Tasks.Task<IMTLLibrary> CreateLibraryAsync (MTLStitchedLibraryDescriptor descriptor);
public virtual System.Threading.Tasks.Task<IMTLLibrary> CreateLibraryAsync (string source, MTLCompileOptions options);
public virtual void CreateRenderPipelineState (MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler);
public virtual IMTLRenderPipelineState CreateRenderPipelineState (MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error);
public virtual MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (MTLAccelerationStructureDescriptor descriptor);
public virtual MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (UIntPtr size);
public virtual MTLSize GetSparseTileSize (MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount, MTLSparsePageSize sparsePageSize);
public virtual UIntPtr GetSparseTileSizeInBytes (MTLSparsePageSize sparsePageSize);

Type Changed: Metal.IMTLDrawable

Modified properties:

-public abstract UIntPtr DrawableId { get; }
+public virtual UIntPtr DrawableId { get; }
-public abstract double PresentedTime { get; }
+public virtual double PresentedTime { get; }

Modified methods:

-public abstract void AddPresentedHandler (System.Action%LESSERTHANREPLACEMENT%IMTLDrawable%GREATERTHANREPLACEMENT% block)
+public virtual void AddPresentedHandler (System.Action%LESSERTHANREPLACEMENT%IMTLDrawable%GREATERTHANREPLACEMENT% block)
-public abstract void Present ()
+public virtual void Present ()
-public abstract void Present (double presentationTime)
+public virtual void Present (double presentationTime)
-public abstract void PresentAfter (double duration)
+public virtual void PresentAfter (double duration)

Type Changed: Metal.IMTLDynamicLibrary

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string InstallName { get; }
+public virtual string InstallName { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract bool Serialize (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual bool Serialize (Foundation.NSUrl url, out Foundation.NSError error)

Type Changed: Metal.IMTLEvent

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Type Changed: Metal.IMTLFence

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Type Changed: Metal.IMTLFunction

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Metal.MTLFunctionConstant%GREATERTHANREPLACEMENT% FunctionConstants { get; }
+public virtual Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Metal.MTLFunctionConstant%GREATERTHANREPLACEMENT% FunctionConstants { get; }
-public abstract MTLFunctionType FunctionType { get; }
+public virtual MTLFunctionType FunctionType { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract string Name { get; }
+public virtual string Name { get; }
-public abstract MTLFunctionOptions Options { get; }
+public virtual MTLFunctionOptions Options { get; }
-public abstract IntPtr PatchControlPointCount { get; }
+public virtual IntPtr PatchControlPointCount { get; }
-public abstract MTLPatchType PatchType { get; }
+public virtual MTLPatchType PatchType { get; }
-public abstract MTLAttribute[] StageInputAttributes { get; }
+public virtual MTLAttribute[] StageInputAttributes { get; }
-public abstract MTLVertexAttribute[] VertexAttributes { get; }
+public virtual MTLVertexAttribute[] VertexAttributes { get; }

Modified methods:

-public abstract IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr bufferIndex)
+public virtual IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr bufferIndex)
-public abstract IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr bufferIndex, out MTLArgument reflection)
+public virtual IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr bufferIndex, out MTLArgument reflection)

Type Changed: Metal.IMTLFunctionHandle

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract MTLFunctionType FunctionType { get; }
+public virtual MTLFunctionType FunctionType { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }

Type Changed: Metal.IMTLFunctionLog

Modified properties:

-public abstract IMTLFunctionLogDebugLocation DebugLocation { get; }
+public virtual IMTLFunctionLogDebugLocation DebugLocation { get; }
-public abstract string EncoderLabel { get; }
+public virtual string EncoderLabel { get; }
-public abstract IMTLFunction Function { get; }
+public virtual IMTLFunction Function { get; }
-public abstract MTLFunctionLogType Type { get; }
+public virtual MTLFunctionLogType Type { get; }

Type Changed: Metal.IMTLFunctionLogDebugLocation

Modified properties:

-public abstract UIntPtr Column { get; }
+public virtual UIntPtr Column { get; }
-public abstract string FunctionName { get; }
+public virtual string FunctionName { get; }
-public abstract UIntPtr Line { get; }
+public virtual UIntPtr Line { get; }
-public abstract Foundation.NSUrl Url { get; }
+public virtual Foundation.NSUrl Url { get; }

Type Changed: Metal.IMTLHeap

Modified properties:

-public abstract MTLCpuCacheMode CpuCacheMode { get; }
+public virtual MTLCpuCacheMode CpuCacheMode { get; }
-public abstract UIntPtr CurrentAllocatedSize { get; }
+public virtual UIntPtr CurrentAllocatedSize { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract MTLHazardTrackingMode HazardTrackingMode { get; }
+public virtual MTLHazardTrackingMode HazardTrackingMode { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract MTLResourceOptions ResourceOptions { get; }
+public virtual MTLResourceOptions ResourceOptions { get; }
-public abstract UIntPtr Size { get; }
+public virtual UIntPtr Size { get; }
-public abstract MTLStorageMode StorageMode { get; }
+public virtual MTLStorageMode StorageMode { get; }
-public abstract MTLHeapType Type { get; }
+public virtual MTLHeapType Type { get; }
-public abstract UIntPtr UsedSize { get; }
+public virtual UIntPtr UsedSize { get; }

Modified methods:

-public abstract IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options)
+public virtual IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options)
-public abstract IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options, UIntPtr offset)
+public virtual IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options, UIntPtr offset)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor desc)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor desc)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, UIntPtr offset)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, UIntPtr offset)
-public abstract UIntPtr GetMaxAvailableSize (UIntPtr alignment)
+public virtual UIntPtr GetMaxAvailableSize (UIntPtr alignment)
-public abstract MTLPurgeableState SetPurgeableState (MTLPurgeableState state)
+public virtual MTLPurgeableState SetPurgeableState (MTLPurgeableState state)

Added methods:

public virtual IMTLAccelerationStructure CreateAccelerationStructure (MTLAccelerationStructureDescriptor descriptor);
public virtual IMTLAccelerationStructure CreateAccelerationStructure (UIntPtr size);
public virtual IMTLAccelerationStructure CreateAccelerationStructure (MTLAccelerationStructureDescriptor descriptor, UIntPtr offset);
public virtual IMTLAccelerationStructure CreateAccelerationStructure (UIntPtr size, UIntPtr offset);

Type Changed: Metal.IMTLIndirectCommandBuffer

Modified properties:

-public abstract UIntPtr Size { get; }
+public virtual UIntPtr Size { get; }

Added property:

public virtual MTLResourceId GpuResourceID { get; }

Modified methods:

-public abstract IMTLIndirectRenderCommand GetCommand (UIntPtr commandIndex)
+public virtual IMTLIndirectRenderCommand GetCommand (UIntPtr commandIndex)
-public abstract IMTLIndirectComputeCommand GetIndirectComputeCommand (UIntPtr commandIndex)
+public virtual IMTLIndirectComputeCommand GetIndirectComputeCommand (UIntPtr commandIndex)
-public abstract void Reset (Foundation.NSRange range)
+public virtual void Reset (Foundation.NSRange range)

Type Changed: Metal.IMTLIndirectComputeCommand

Modified methods:

-public abstract void ClearBarrier ()
+public virtual void ClearBarrier ()
-public abstract void ConcurrentDispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup)
+public virtual void ConcurrentDispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup)
-public abstract void ConcurrentDispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup)
+public virtual void ConcurrentDispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup)
-public abstract void Reset ()
+public virtual void Reset ()
-public abstract void SetBarrier ()
+public virtual void SetBarrier ()
-public abstract void SetComputePipelineState (IMTLComputePipelineState pipelineState)
+public virtual void SetComputePipelineState (IMTLComputePipelineState pipelineState)
-public abstract void SetImageblock (UIntPtr width, UIntPtr height)
+public virtual void SetImageblock (UIntPtr width, UIntPtr height)
-public abstract void SetKernelBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetKernelBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetStageInRegion (MTLRegion region)
+public virtual void SetStageInRegion (MTLRegion region)
-public abstract void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr index)
+public virtual void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr index)

Added method:

public virtual void SetKernelBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);

Type Changed: Metal.IMTLIndirectRenderCommand

Modified methods:

-public abstract void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance, IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
+public virtual void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance, IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount, IntPtr baseVertex, UIntPtr baseInstance)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount, IntPtr baseVertex, UIntPtr baseInstance)
-public abstract void DrawPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance, IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
+public virtual void DrawPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance, IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount, UIntPtr baseInstance)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount, UIntPtr baseInstance)
-public abstract void Reset ()
+public virtual void Reset ()
-public abstract void SetFragmentBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetFragmentBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetRenderPipelineState (IMTLRenderPipelineState pipelineState)
+public virtual void SetRenderPipelineState (IMTLRenderPipelineState pipelineState)
-public abstract void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)

Added methods:

public virtual void ClearBarrier ();
public virtual void DrawMeshThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void DrawMeshThreads (MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void SetBarrier ();
public virtual void SetMeshBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
public virtual void SetObjectBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
public virtual void SetObjectThreadgroupMemoryLength (UIntPtr length, UIntPtr index);
public virtual void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);

Type Changed: Metal.IMTLIntersectionFunctionTable

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Modified methods:

-public abstract void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
+public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
-public abstract void SetFunction (IMTLFunctionHandle function, UIntPtr index)
+public virtual void SetFunction (IMTLFunctionHandle function, UIntPtr index)
-public abstract void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range)
+public virtual void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range)
-public abstract void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, Foundation.NSRange range)
+public virtual void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, Foundation.NSRange range)
-public abstract void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, UIntPtr index)
+public virtual void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, UIntPtr index)
-public abstract void SetVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
+public virtual void SetVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
-public abstract void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange bufferRange)
+public virtual void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange bufferRange)

Added methods:

public virtual void SetOpaqueCurveIntersectionFunction (MTLIntersectionFunctionSignature signature, Foundation.NSRange range);
public virtual void SetOpaqueCurveIntersectionFunction (MTLIntersectionFunctionSignature signature, UIntPtr index);

Type Changed: Metal.IMTLLibrary

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string[] FunctionNames { get; }
+public virtual string[] FunctionNames { get; }
-public abstract string InstallName { get; }
+public virtual string InstallName { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract MTLLibraryType Type { get; }
+public virtual MTLLibraryType Type { get; }

Modified methods:

-public abstract IMTLFunction CreateFunction (string functionName)
+public virtual IMTLFunction CreateFunction (string functionName)
-public abstract void CreateFunction (MTLFunctionDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateFunction (MTLFunctionDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLFunction CreateFunction (MTLFunctionDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLFunction CreateFunction (MTLFunctionDescriptor descriptor, out Foundation.NSError error)
-public abstract void CreateFunction (string name, MTLFunctionConstantValues constantValues, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateFunction (string name, MTLFunctionConstantValues constantValues, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLFunction CreateFunction (string name, MTLFunctionConstantValues constantValues, out Foundation.NSError error)
+public virtual IMTLFunction CreateFunction (string name, MTLFunctionConstantValues constantValues, out Foundation.NSError error)
-public abstract void CreateIntersectionFunction (MTLIntersectionFunctionDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateIntersectionFunction (MTLIntersectionFunctionDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLFunction CreateIntersectionFunction (MTLIntersectionFunctionDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLFunction CreateIntersectionFunction (MTLIntersectionFunctionDescriptor descriptor, out Foundation.NSError error)

Added method:

public virtual System.Threading.Tasks.Task<IMTLFunction> CreateFunctionAsync (string name, MTLFunctionConstantValues constantValues);

Type Changed: Metal.IMTLParallelRenderCommandEncoder

Modified methods:

-public abstract IMTLRenderCommandEncoder CreateRenderCommandEncoder ()
+public virtual IMTLRenderCommandEncoder CreateRenderCommandEncoder ()
-public abstract void SetColorStoreAction (MTLStoreAction storeAction, UIntPtr colorAttachmentIndex)
+public virtual void SetColorStoreAction (MTLStoreAction storeAction, UIntPtr colorAttachmentIndex)
-public abstract void SetColorStoreActionOptions (MTLStoreActionOptions storeActionOptions, UIntPtr colorAttachmentIndex)
+public virtual void SetColorStoreActionOptions (MTLStoreActionOptions storeActionOptions, UIntPtr colorAttachmentIndex)
-public abstract void SetDepthStoreAction (MTLStoreAction storeAction)
+public virtual void SetDepthStoreAction (MTLStoreAction storeAction)
-public abstract void SetDepthStoreActionOptions (MTLStoreActionOptions storeActionOptions)
+public virtual void SetDepthStoreActionOptions (MTLStoreActionOptions storeActionOptions)
-public abstract void SetStencilStoreAction (MTLStoreAction storeAction)
+public virtual void SetStencilStoreAction (MTLStoreAction storeAction)
-public abstract void SetStencilStoreActionOptions (MTLStoreActionOptions storeActionOptions)
+public virtual void SetStencilStoreActionOptions (MTLStoreActionOptions storeActionOptions)

Type Changed: Metal.IMTLRasterizationRateMap

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr LayerCount { get; }
+public virtual UIntPtr LayerCount { get; }
-public abstract MTLSizeAndAlign ParameterBufferSizeAndAlign { get; }
+public virtual MTLSizeAndAlign ParameterBufferSizeAndAlign { get; }
-public abstract MTLSize PhysicalGranularity { get; }
+public virtual MTLSize PhysicalGranularity { get; }
-public abstract MTLSize ScreenSize { get; }
+public virtual MTLSize ScreenSize { get; }

Modified methods:

-public abstract void CopyParameterData (IMTLBuffer buffer, UIntPtr offset)
+public virtual void CopyParameterData (IMTLBuffer buffer, UIntPtr offset)
-public abstract MTLSize GetPhysicalSize (UIntPtr layerIndex)
+public virtual MTLSize GetPhysicalSize (UIntPtr layerIndex)
-public abstract MTLCoordinate2D MapPhysicalToScreenCoordinates (MTLCoordinate2D physicalCoordinates, UIntPtr layerIndex)
+public virtual MTLCoordinate2D MapPhysicalToScreenCoordinates (MTLCoordinate2D physicalCoordinates, UIntPtr layerIndex)
-public abstract MTLCoordinate2D MapScreenToPhysicalCoordinates (MTLCoordinate2D screenCoordinates, UIntPtr layerIndex)
+public virtual MTLCoordinate2D MapScreenToPhysicalCoordinates (MTLCoordinate2D screenCoordinates, UIntPtr layerIndex)

Type Changed: Metal.IMTLRenderCommandEncoder

Modified properties:

-public abstract UIntPtr TileHeight { get; }
+public virtual UIntPtr TileHeight { get; }
-public abstract UIntPtr TileWidth { get; }
+public virtual UIntPtr TileWidth { get; }

Modified methods:

-public abstract void DispatchThreadsPerTile (MTLSize threadsPerTile)
+public virtual void DispatchThreadsPerTile (MTLSize threadsPerTile)
-public abstract void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance)
+public virtual void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount, IntPtr baseVertex, UIntPtr baseInstance)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount, IntPtr baseVertex, UIntPtr baseInstance)
-public abstract void DrawPatches (UIntPtr numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void DrawPatches (UIntPtr numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void DrawPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance)
+public virtual void DrawPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount, UIntPtr baseInstance)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount, UIntPtr baseInstance)
-public abstract void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange)
+public virtual void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange)
-public abstract void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, UIntPtr indirectBufferOffset)
+public virtual void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, UIntPtr indirectBufferOffset)
-public abstract void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
+public virtual void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
-public abstract void SetBlendColor (float red, float green, float blue, float alpha)
+public virtual void SetBlendColor (float red, float green, float blue, float alpha)
-public abstract void SetColorStoreAction (MTLStoreAction storeAction, UIntPtr colorAttachmentIndex)
+public virtual void SetColorStoreAction (MTLStoreAction storeAction, UIntPtr colorAttachmentIndex)
-public abstract void SetColorStoreActionOptions (MTLStoreActionOptions storeActionOptions, UIntPtr colorAttachmentIndex)
+public virtual void SetColorStoreActionOptions (MTLStoreActionOptions storeActionOptions, UIntPtr colorAttachmentIndex)
-public abstract void SetCullMode (MTLCullMode cullMode)
+public virtual void SetCullMode (MTLCullMode cullMode)
-public abstract void SetDepthBias (float depthBias, float slopeScale, float clamp)
+public virtual void SetDepthBias (float depthBias, float slopeScale, float clamp)
-public abstract void SetDepthClipMode (MTLDepthClipMode depthClipMode)
+public virtual void SetDepthClipMode (MTLDepthClipMode depthClipMode)
-public abstract void SetDepthStencilState (IMTLDepthStencilState depthStencilState)
+public virtual void SetDepthStencilState (IMTLDepthStencilState depthStencilState)
-public abstract void SetDepthStoreAction (MTLStoreAction storeAction)
+public virtual void SetDepthStoreAction (MTLStoreAction storeAction)
-public abstract void SetDepthStoreActionOptions (MTLStoreActionOptions storeActionOptions)
+public virtual void SetDepthStoreActionOptions (MTLStoreActionOptions storeActionOptions)
-public abstract void SetFragmentAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
+public virtual void SetFragmentAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
-public abstract void SetFragmentBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetFragmentBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetFragmentBufferOffset (UIntPtr offset, UIntPtr index)
+public virtual void SetFragmentBufferOffset (UIntPtr offset, UIntPtr index)
-public abstract void SetFragmentBuffers (IMTLBuffer buffers, IntPtr IntPtrOffsets, Foundation.NSRange range)
+public virtual void SetFragmentBuffers (IMTLBuffer buffers, IntPtr IntPtrOffsets, Foundation.NSRange range)
-public abstract void SetFragmentBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
+public virtual void SetFragmentBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
-public abstract void SetFragmentIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
+public virtual void SetFragmentIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
-public abstract void SetFragmentIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
+public virtual void SetFragmentIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
-public abstract void SetFragmentSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetFragmentSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetFragmentSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
+public virtual void SetFragmentSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
-public abstract void SetFragmentSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetFragmentSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetFragmentSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
+public virtual void SetFragmentSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
-public abstract void SetFragmentTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetFragmentTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetFragmentTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetFragmentTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetFragmentVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
+public virtual void SetFragmentVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
-public abstract void SetFragmentVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
+public virtual void SetFragmentVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
-public abstract void SetFrontFacingWinding (MTLWinding frontFacingWinding)
+public virtual void SetFrontFacingWinding (MTLWinding frontFacingWinding)
-public abstract void SetRenderPipelineState (IMTLRenderPipelineState pipelineState)
+public virtual void SetRenderPipelineState (IMTLRenderPipelineState pipelineState)
-public abstract void SetScissorRect (MTLScissorRect rect)
+public virtual void SetScissorRect (MTLScissorRect rect)
-public abstract void SetScissorRects (IntPtr scissorRects, UIntPtr count)
+public virtual void SetScissorRects (IntPtr scissorRects, UIntPtr count)
-public abstract void SetStencilFrontReferenceValue (uint frontReferenceValue, uint backReferenceValue)
+public virtual void SetStencilFrontReferenceValue (uint frontReferenceValue, uint backReferenceValue)
-public abstract void SetStencilReferenceValue (uint referenceValue)
+public virtual void SetStencilReferenceValue (uint referenceValue)
-public abstract void SetStencilStoreAction (MTLStoreAction storeAction)
+public virtual void SetStencilStoreAction (MTLStoreAction storeAction)
-public abstract void SetStencilStoreActionOptions (MTLStoreActionOptions storeActionOptions)
+public virtual void SetStencilStoreActionOptions (MTLStoreActionOptions storeActionOptions)
-public abstract void SetTessellationFactorBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
+public virtual void SetTessellationFactorBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
-public abstract void SetTessellationFactorScale (float scale)
+public virtual void SetTessellationFactorScale (float scale)
-public abstract void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr offset, UIntPtr index)
+public virtual void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr offset, UIntPtr index)
-public abstract void SetTileAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
+public virtual void SetTileAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
-public abstract void SetTileBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetTileBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetTileBufferOffset (UIntPtr offset, UIntPtr index)
+public virtual void SetTileBufferOffset (UIntPtr offset, UIntPtr index)
-public abstract void SetTileBuffers (IMTLBuffer[] buffers, IntPtr offsets, Foundation.NSRange range)
+public virtual void SetTileBuffers (IMTLBuffer[] buffers, IntPtr offsets, Foundation.NSRange range)
-public abstract void SetTileBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
+public virtual void SetTileBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
-public abstract void SetTileIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
+public virtual void SetTileIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
-public abstract void SetTileIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
+public virtual void SetTileIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
-public abstract void SetTileSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetTileSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetTileSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
+public virtual void SetTileSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
-public abstract void SetTileSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetTileSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetTileSamplerStates (IMTLSamplerState[] samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range)
+public virtual void SetTileSamplerStates (IMTLSamplerState[] samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range)
-public abstract void SetTileTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetTileTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetTileTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetTileTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetTileVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
+public virtual void SetTileVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
-public abstract void SetTileVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
+public virtual void SetTileVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
-public abstract void SetTriangleFillMode (MTLTriangleFillMode fillMode)
+public virtual void SetTriangleFillMode (MTLTriangleFillMode fillMode)
-public abstract void SetVertexAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
+public virtual void SetVertexAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
-public abstract void SetVertexAmplificationCount (UIntPtr count, MTLVertexAmplificationViewMapping viewMappings)
+public virtual void SetVertexAmplificationCount (UIntPtr count, MTLVertexAmplificationViewMapping viewMappings)
-public abstract void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetVertexBufferOffset (UIntPtr offset, UIntPtr index)
+public virtual void SetVertexBufferOffset (UIntPtr offset, UIntPtr index)
-public abstract void SetVertexBuffers (IMTLBuffer[] buffers, IntPtr uintArrayPtrOffsets, Foundation.NSRange range)
+public virtual void SetVertexBuffers (IMTLBuffer[] buffers, IntPtr uintArrayPtrOffsets, Foundation.NSRange range)
-public abstract void SetVertexBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
+public virtual void SetVertexBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
-public abstract void SetVertexIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
+public virtual void SetVertexIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
-public abstract void SetVertexIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
+public virtual void SetVertexIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
-public abstract void SetVertexSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetVertexSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetVertexSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
+public virtual void SetVertexSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
-public abstract void SetVertexSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetVertexSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetVertexSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
+public virtual void SetVertexSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
-public abstract void SetVertexTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetVertexTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetVertexTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetVertexTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetVertexVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
+public virtual void SetVertexVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
-public abstract void SetVertexVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
+public virtual void SetVertexVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
-public abstract void SetViewport (MTLViewport viewport)
+public virtual void SetViewport (MTLViewport viewport)
-public abstract void SetViewports (IntPtr viewports, UIntPtr count)
+public virtual void SetViewports (IntPtr viewports, UIntPtr count)
-public abstract void SetVisibilityResultMode (MTLVisibilityResultMode mode, UIntPtr offset)
+public virtual void SetVisibilityResultMode (MTLVisibilityResultMode mode, UIntPtr offset)
-public abstract void Update (IMTLFence fence, MTLRenderStages stages)
+public virtual void Update (IMTLFence fence, MTLRenderStages stages)
-public abstract void UseHeap (IMTLHeap heap)
+public virtual void UseHeap (IMTLHeap heap)
-public abstract void UseHeap (IMTLHeap heap, MTLRenderStages stages)
+public virtual void UseHeap (IMTLHeap heap, MTLRenderStages stages)
-public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
+public virtual void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
-public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count, MTLRenderStages stages)
+public virtual void UseHeaps (IMTLHeap[] heaps, UIntPtr count, MTLRenderStages stages)
-public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage)
+public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage)
-public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage, MTLRenderStages stages)
+public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage, MTLRenderStages stages)
-public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
+public virtual void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
-public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage, MTLRenderStages stages)
+public virtual void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage, MTLRenderStages stages)
-public abstract void Wait (IMTLFence fence, MTLRenderStages stages)
+public virtual void Wait (IMTLFence fence, MTLRenderStages stages)

Added methods:

public virtual void DrawMeshThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void DrawMeshThreadgroups (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void DrawMeshThreads (MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void MemoryBarrier (MTLBarrierScope scope, MTLRenderStages after, MTLRenderStages before);
public virtual void MemoryBarrier (IMTLResource[] resources, UIntPtr count, MTLRenderStages after, MTLRenderStages before);
public virtual void SetMeshBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
public virtual void SetMeshBufferOffset (UIntPtr offset, UIntPtr index);
public virtual void SetMeshBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
public virtual void SetMeshBytes (IntPtr bytes, UIntPtr length, UIntPtr index);
public virtual void SetMeshSamplerState (IMTLSamplerState sampler, UIntPtr index);
public virtual void SetMeshSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index);
public virtual void SetMeshSamplerStates (IntPtr samplers, Foundation.NSRange range);
public virtual void SetMeshSamplerStates (IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
public virtual void SetMeshTexture (IMTLTexture texture, UIntPtr index);
public virtual void SetMeshTextures (IntPtr textures, Foundation.NSRange range);
public virtual void SetObjectBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
public virtual void SetObjectBufferOffset (UIntPtr offset, UIntPtr index);
public virtual void SetObjectBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
public virtual void SetObjectBytes (IntPtr bytes, UIntPtr length, UIntPtr index);
public virtual void SetObjectSamplerState (IMTLSamplerState sampler, UIntPtr index);
public virtual void SetObjectSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index);
public virtual void SetObjectSamplerStates (IntPtr samplers, Foundation.NSRange range);
public virtual void SetObjectSamplerStates (IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
public virtual void SetObjectTexture (IMTLTexture texture, UIntPtr index);
public virtual void SetObjectTextures (IntPtr textures, Foundation.NSRange range);
public virtual void SetObjectThreadgroupMemoryLength (UIntPtr length, UIntPtr index);
public virtual void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
public virtual void SetVertexBufferOffset (UIntPtr offset, UIntPtr stride, UIntPtr index);
public virtual void SetVertexBuffers (IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range);
public virtual void SetVertexBytes (IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index);

Type Changed: Metal.IMTLRenderPipelineState

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract UIntPtr ImageblockSampleLength { get; }
+public virtual UIntPtr ImageblockSampleLength { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr MaxTotalThreadsPerThreadgroup { get; }
+public virtual UIntPtr MaxTotalThreadsPerThreadgroup { get; }
-public abstract bool SupportIndirectCommandBuffers { get; }
+public virtual bool SupportIndirectCommandBuffers { get; }
-public abstract bool ThreadgroupSizeMatchesTileSize { get; }
+public virtual bool ThreadgroupSizeMatchesTileSize { get; }

Added properties:

public virtual MTLResourceId GpuResourceId { get; }
public virtual UIntPtr MaxTotalThreadgroupsPerMeshGrid { get; }
public virtual UIntPtr MaxTotalThreadsPerMeshThreadgroup { get; }
public virtual UIntPtr MaxTotalThreadsPerObjectThreadgroup { get; }
public virtual UIntPtr MeshThreadExecutionWidth { get; }
public virtual UIntPtr ObjectThreadExecutionWidth { get; }

Modified methods:

-public abstract IMTLFunctionHandle FunctionHandleWithFunction (IMTLFunction function, MTLRenderStages stage)
+public virtual IMTLFunctionHandle FunctionHandleWithFunction (IMTLFunction function, MTLRenderStages stage)
-public abstract UIntPtr GetImageblockMemoryLength (MTLSize imageblockDimensions)
+public virtual UIntPtr GetImageblockMemoryLength (MTLSize imageblockDimensions)
-public abstract IMTLIntersectionFunctionTable NewIntersectionFunctionTableWithDescriptor (MTLIntersectionFunctionTableDescriptor descriptor, MTLRenderStages stage)
+public virtual IMTLIntersectionFunctionTable NewIntersectionFunctionTableWithDescriptor (MTLIntersectionFunctionTableDescriptor descriptor, MTLRenderStages stage)
-public abstract IMTLRenderPipelineState NewRenderPipelineStateWithAdditionalBinaryFunctions (MTLRenderPipelineFunctionsDescriptor additionalBinaryFunctions, out Foundation.NSError error)
+public virtual IMTLRenderPipelineState NewRenderPipelineStateWithAdditionalBinaryFunctions (MTLRenderPipelineFunctionsDescriptor additionalBinaryFunctions, out Foundation.NSError error)
-public abstract IMTLVisibleFunctionTable NewVisibleFunctionTableWithDescriptor (MTLVisibleFunctionTableDescriptor descriptor, MTLRenderStages stage)
+public virtual IMTLVisibleFunctionTable NewVisibleFunctionTableWithDescriptor (MTLVisibleFunctionTableDescriptor descriptor, MTLRenderStages stage)

Type Changed: Metal.IMTLResource

Modified properties:

-public abstract UIntPtr AllocatedSize { get; }
+public virtual UIntPtr AllocatedSize { get; }
-public abstract MTLCpuCacheMode CpuCacheMode { get; }
+public virtual MTLCpuCacheMode CpuCacheMode { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract MTLHazardTrackingMode HazardTrackingMode { get; }
+public virtual MTLHazardTrackingMode HazardTrackingMode { get; }
-public abstract IMTLHeap Heap { get; }
+public virtual IMTLHeap Heap { get; }
-public abstract UIntPtr HeapOffset { get; }
+public virtual UIntPtr HeapOffset { get; }
-public abstract bool IsAliasable { get; }
+public virtual bool IsAliasable { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract MTLResourceOptions ResourceOptions { get; }
+public virtual MTLResourceOptions ResourceOptions { get; }
-public abstract MTLStorageMode StorageMode { get; }
+public virtual MTLStorageMode StorageMode { get; }

Modified methods:

-public abstract void MakeAliasable ()
+public virtual void MakeAliasable ()
-public abstract MTLPurgeableState SetPurgeableState (MTLPurgeableState state)
+public virtual MTLPurgeableState SetPurgeableState (MTLPurgeableState state)

Added method:

public virtual int SetOwnerWithIdentity (uint taskIdToken);

Type Changed: Metal.IMTLResourceStateCommandEncoder

Modified methods:

-public abstract void Update (IMTLFence fence)
+public virtual void Update (IMTLFence fence)
-public abstract void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, MTLRegion region, UIntPtr mipLevel, UIntPtr slice)
+public virtual void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, MTLRegion region, UIntPtr mipLevel, UIntPtr slice)
-public abstract void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, IntPtr regions, IntPtr mipLevels, IntPtr slices, UIntPtr numRegions)
+public virtual void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, IntPtr regions, IntPtr mipLevels, IntPtr slices, UIntPtr numRegions)
-public abstract void Wait (IMTLFence fence)
+public virtual void Wait (IMTLFence fence)

Added method:

public virtual void MoveTextureMappings (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin);

Type Changed: Metal.IMTLSamplerState

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Type Changed: Metal.IMTLSharedEvent

Modified properties:

-public abstract ulong SignaledValue { get; set; }
+public virtual ulong SignaledValue { get; set; }

Modified methods:

-public abstract MTLSharedEventHandle CreateSharedEventHandle ()
+public virtual MTLSharedEventHandle CreateSharedEventHandle ()
-public abstract void NotifyListener (MTLSharedEventListener listener, ulong atValue, MTLSharedEventNotificationBlock block)
+public virtual void NotifyListener (MTLSharedEventListener listener, ulong atValue, MTLSharedEventNotificationBlock block)

Added method:

public virtual bool WaitUntilSignaledValue (ulong value, ulong milliseconds);

Type Changed: Metal.IMTLTexture

Modified properties:

-public abstract bool AllowGpuOptimizedContents { get; }
+public virtual bool AllowGpuOptimizedContents { get; }
-public abstract UIntPtr ArrayLength { get; }
+public virtual UIntPtr ArrayLength { get; }
-public abstract IMTLBuffer Buffer { get; }
+public virtual IMTLBuffer Buffer { get; }
-public abstract UIntPtr BufferBytesPerRow { get; }
+public virtual UIntPtr BufferBytesPerRow { get; }
-public abstract UIntPtr BufferOffset { get; }
+public virtual UIntPtr BufferOffset { get; }
-public abstract MTLTextureCompressionType CompressionType { get; }
+public virtual MTLTextureCompressionType CompressionType { get; }
-public abstract UIntPtr Depth { get; }
+public virtual UIntPtr Depth { get; }
-public abstract UIntPtr FirstMipmapInTail { get; }
+public virtual UIntPtr FirstMipmapInTail { get; }
-public abstract bool FramebufferOnly { get; }
+public virtual bool FramebufferOnly { get; }
-public abstract UIntPtr Height { get; }
+public virtual UIntPtr Height { get; }
-public abstract IOSurface.IOSurface IOSurface { get; }
+public virtual IOSurface.IOSurface IOSurface { get; }
-public abstract UIntPtr IOSurfacePlane { get; }
+public virtual UIntPtr IOSurfacePlane { get; }
-public abstract bool IsSparse { get; }
+public virtual bool IsSparse { get; }
-public abstract UIntPtr MipmapLevelCount { get; }
+public virtual UIntPtr MipmapLevelCount { get; }
-public abstract UIntPtr ParentRelativeLevel { get; }
+public virtual UIntPtr ParentRelativeLevel { get; }
-public abstract UIntPtr ParentRelativeSlice { get; }
+public virtual UIntPtr ParentRelativeSlice { get; }
-public abstract IMTLTexture ParentTexture { get; }
+public virtual IMTLTexture ParentTexture { get; }
-public abstract MTLPixelFormat PixelFormat { get; }
+public virtual MTLPixelFormat PixelFormat { get; }
-public abstract IMTLResource RootResource { get; }
+public virtual IMTLResource RootResource { get; }
-public abstract UIntPtr SampleCount { get; }
+public virtual UIntPtr SampleCount { get; }
-public abstract bool Shareable { get; }
+public virtual bool Shareable { get; }
-public abstract MTLTextureSwizzleChannels Swizzle { get; }
+public virtual MTLTextureSwizzleChannels Swizzle { get; }
-public abstract UIntPtr TailSizeInBytes { get; }
+public virtual UIntPtr TailSizeInBytes { get; }
-public abstract MTLTextureType TextureType { get; }
+public virtual MTLTextureType TextureType { get; }
-public abstract MTLTextureUsage Usage { get; }
+public virtual MTLTextureUsage Usage { get; }
-public abstract UIntPtr Width { get; }
+public virtual UIntPtr Width { get; }

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Modified methods:

-public abstract IMTLTexture Create (MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange, MTLTextureSwizzleChannels swizzle)
+public virtual IMTLTexture Create (MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange, MTLTextureSwizzleChannels swizzle)
-public abstract MTLSharedTextureHandle CreateSharedTextureHandle ()
+public virtual MTLSharedTextureHandle CreateSharedTextureHandle ()
-public abstract IMTLTexture CreateTextureView (MTLPixelFormat pixelFormat)
+public virtual IMTLTexture CreateTextureView (MTLPixelFormat pixelFormat)
-public abstract IMTLTexture CreateTextureView (MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange)
+public virtual IMTLTexture CreateTextureView (MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange)
-public abstract void GetBytes (IntPtr pixelBytes, UIntPtr bytesPerRow, MTLRegion region, UIntPtr level)
+public virtual void GetBytes (IntPtr pixelBytes, UIntPtr bytesPerRow, MTLRegion region, UIntPtr level)
-public abstract void GetBytes (IntPtr pixelBytes, UIntPtr bytesPerRow, UIntPtr bytesPerImage, MTLRegion region, UIntPtr level, UIntPtr slice)
+public virtual void GetBytes (IntPtr pixelBytes, UIntPtr bytesPerRow, UIntPtr bytesPerImage, MTLRegion region, UIntPtr level, UIntPtr slice)
-public abstract void ReplaceRegion (MTLRegion region, UIntPtr level, IntPtr pixelBytes, UIntPtr bytesPerRow)
+public virtual void ReplaceRegion (MTLRegion region, UIntPtr level, IntPtr pixelBytes, UIntPtr bytesPerRow)
-public abstract void ReplaceRegion (MTLRegion region, UIntPtr level, UIntPtr slice, IntPtr pixelBytes, UIntPtr bytesPerRow, UIntPtr bytesPerImage)
+public virtual void ReplaceRegion (MTLRegion region, UIntPtr level, UIntPtr slice, IntPtr pixelBytes, UIntPtr bytesPerRow, UIntPtr bytesPerImage)

Type Changed: Metal.IMTLVisibleFunctionTable

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Modified methods:

-public abstract void SetFunction (IMTLFunctionHandle function, UIntPtr index)
+public virtual void SetFunction (IMTLFunctionHandle function, UIntPtr index)
-public abstract void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range)
+public virtual void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range)

Type Changed: Metal.MTLAccelerationStructureGeometryDescriptor

Added properties:

public virtual IMTLBuffer PrimitiveDataBuffer { get; set; }
public virtual UIntPtr PrimitiveDataBufferOffset { get; set; }
public virtual UIntPtr PrimitiveDataElementSize { get; set; }
public virtual UIntPtr PrimitiveDataStride { get; set; }

Type Changed: Metal.MTLAccelerationStructureInstanceDescriptorType

Added values:

Indirect = 3,
IndirectMotion = 4,

Type Changed: Metal.MTLAccelerationStructureMotionTriangleGeometryDescriptor

Added properties:

public virtual IMTLBuffer TransformationMatrixBuffer { get; set; }
public virtual UIntPtr TransformationMatrixBufferOffset { get; set; }
public virtual MTLAttributeFormat VertexFormat { get; set; }

Type Changed: Metal.MTLAccelerationStructureTriangleGeometryDescriptor

Added properties:

public virtual IMTLBuffer TransformationMatrixBuffer { get; set; }
public virtual UIntPtr TransformationMatrixBufferOffset { get; set; }
public virtual MTLAttributeFormat VertexFormat { get; set; }

Type Changed: Metal.MTLAttributeFormat

Added values:

FloatRG11B10 = 54,
FloatRGB9E5 = 55,

Type Changed: Metal.MTLBinaryArchiveError

Added value:

InternalError = 4,

Type Changed: Metal.MTLCompileOptions

Added properties:

public virtual bool AllowReferencingUndefinedSymbols { get; set; }
public virtual MTLCompileSymbolVisibility CompileSymbolVisibility { get; set; }
public virtual UIntPtr MaxTotalThreadsPerThreadgroup { get; set; }
public virtual MTLLibraryOptimizationLevel OptimizationLevel { get; set; }

Type Changed: Metal.MTLComputePipelineReflection

Added property:

public virtual IMTLBinding[] Bindings { get; }

Type Changed: Metal.MTLDataType

Added values:

BFloat = 121,
BFloat2 = 122,
BFloat3 = 123,
BFloat4 = 124,

Type Changed: Metal.MTLDevice_Extensions

Added methods:

public static IMTLArgumentEncoder CreateArgumentEncoder (this IMTLDevice This, IMTLBufferBinding bufferBinding);
public static void CreateRenderPipelineState (this IMTLDevice This, MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler);
public static IMTLRenderPipelineState CreateRenderPipelineState (this IMTLDevice This, MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error);
public static MTLArchitecture GetArchitecture (this IMTLDevice This);
public static MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor);
public static MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (this IMTLDevice This, UIntPtr size);
public static MTLSize GetSparseTileSize (this IMTLDevice This, MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount, MTLSparsePageSize sparsePageSize);
public static UIntPtr GetSparseTileSizeInBytes (this IMTLDevice This, MTLSparsePageSize sparsePageSize);

Type Changed: Metal.MTLFunctionOptions

Added value:

StoreFunctionInMetalScript = 2,

Type Changed: Metal.MTLFunctionType

Added values:

Mesh = 7,
Object = 8,

Type Changed: Metal.MTLGpuFamily

Added values:

Apple8 = 1008,
Apple9 = 1009,
Metal3 = 5001,

Type Changed: Metal.MTLHeapDescriptor

Added property:

public virtual MTLSparsePageSize SparsePageSize { get; set; }

Type Changed: Metal.MTLIndirectCommandBufferDescriptor

Added properties:

public virtual UIntPtr MaxKernelThreadgroupMemoryBindCount { get; set; }
public virtual UIntPtr MaxMeshBufferBindCount { get; set; }
public virtual UIntPtr MaxObjectBufferBindCount { get; set; }
public virtual UIntPtr MaxObjectThreadgroupMemoryBindCount { get; set; }
public virtual bool SupportDynamicAttributeStride { get; set; }
public virtual bool SupportRayTracing { get; set; }

Type Changed: Metal.MTLIndirectCommandType

Added values:

DrawMeshThreadgroups = 128,
DrawMeshThreads = 256,

Type Changed: Metal.MTLIntersectionFunctionSignature

Added values:

CurveData = 128,
MaxLevels = 64,

Type Changed: Metal.MTLLanguageVersion

Added values:

v3_0 = 196608,
v3_1 = 196609,

Type Changed: Metal.MTLRenderPipelineReflection

Added properties:

public virtual IMTLBinding[] FragmentBindings { get; }
public virtual IMTLBinding[] MeshBindings { get; }
public virtual IMTLBinding[] ObjectBindings { get; }
public virtual IMTLBinding[] TileBindings { get; }
public virtual IMTLBinding[] VertexBindings { get; }

Type Changed: Metal.MTLRenderStages

Added values:

Mesh = 16,
Object = 8,

Type Changed: Metal.MTLResourceStateCommandEncoder_Extensions

Added method:

public static void MoveTextureMappings (this IMTLResourceStateCommandEncoder This, IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin);

Type Changed: Metal.MTLTextureUsage

Added value:

ShaderAtomic = 32,

Type Changed: Metal.MTLVertexFormat

Added values:

FloatRG11B10 = 54,
FloatRgb9E5 = 55,

New Type: Metal.IMTLBinding

public interface IMTLBinding : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual MTLBindingAccess Access { get; }
	public virtual bool Argument { get; }
	public virtual UIntPtr Index { get; }
	public virtual string Name { get; }
	public virtual MTLBindingType Type { get; }
	public virtual bool Used { get; }
}

New Type: Metal.IMTLBufferBinding

public interface IMTLBufferBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr BufferAlignment { get; }
	public virtual UIntPtr BufferDataSize { get; }
	public virtual MTLDataType BufferDataType { get; }
	public virtual MTLPointerType BufferPointerType { get; }
	public virtual MTLStructType BufferStructType { get; }
}

New Type: Metal.IMTLObjectPayloadBinding

public interface IMTLObjectPayloadBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr ObjectPayloadAlignment { get; }
	public virtual UIntPtr ObjectPayloadDataSize { get; }
}

New Type: Metal.IMTLTextureBinding

public interface IMTLTextureBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr ArrayLength { get; }
	public virtual bool DepthTexture { get; }
	public virtual MTLDataType TextureDataType { get; }
	public virtual MTLTextureType TextureType { get; }
}

New Type: Metal.IMTLThreadgroupBinding

public interface IMTLThreadgroupBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr ThreadgroupMemoryAlignment { get; }
	public virtual UIntPtr ThreadgroupMemoryDataSize { get; }
}

New Type: Metal.MTLAccelerationStructureCommandEncoder_Extensions

public static class MTLAccelerationStructureCommandEncoder_Extensions {
	// methods
	public static void RefitAccelerationStructure (this IMTLAccelerationStructureCommandEncoder This, IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset, MTLAccelerationStructureRefitOptions options);
}

New Type: Metal.MTLAccelerationStructureCurveGeometryDescriptor

public class MTLAccelerationStructureCurveGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor {
	// constructors
	public MTLAccelerationStructureCurveGeometryDescriptor ();
	protected MTLAccelerationStructureCurveGeometryDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructureCurveGeometryDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IMTLBuffer ControlPointBuffer { get; set; }
	public virtual UIntPtr ControlPointBufferOffset { get; set; }
	public virtual UIntPtr ControlPointCount { get; set; }
	public virtual MTLAttributeFormat ControlPointFormat { get; set; }
	public virtual UIntPtr ControlPointStride { get; set; }
	public virtual MTLCurveBasis CurveBasis { get; set; }
	public virtual MTLCurveEndCaps CurveEndCaps { get; set; }
	public virtual MTLCurveType CurveType { get; set; }
	public virtual IMTLBuffer IndexBuffer { get; set; }
	public virtual UIntPtr IndexBufferOffset { get; set; }
	public virtual MTLIndexType IndexType { get; set; }
	public virtual IMTLBuffer RadiusBuffer { get; set; }
	public virtual UIntPtr RadiusBufferOffset { get; set; }
	public virtual MTLAttributeFormat RadiusFormat { get; set; }
	public virtual UIntPtr RadiusStride { get; set; }
	public virtual UIntPtr SegmentControlPointCount { get; set; }
	public virtual UIntPtr SegmentCount { get; set; }
	// methods
	public static MTLAccelerationStructureCurveGeometryDescriptor GetDescriptor ();
}

New Type: Metal.MTLAccelerationStructureMotionCurveGeometryDescriptor

public class MTLAccelerationStructureMotionCurveGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor {
	// constructors
	public MTLAccelerationStructureMotionCurveGeometryDescriptor ();
	protected MTLAccelerationStructureMotionCurveGeometryDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructureMotionCurveGeometryDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MTLMotionKeyframeData[] ControlPointBuffers { get; set; }
	public virtual UIntPtr ControlPointCount { get; set; }
	public virtual MTLAttributeFormat ControlPointFormat { get; set; }
	public virtual UIntPtr ControlPointStride { get; set; }
	public virtual MTLCurveBasis CurveBasis { get; set; }
	public virtual MTLCurveEndCaps CurveEndCaps { get; set; }
	public virtual MTLCurveType CurveType { get; set; }
	public virtual IMTLBuffer IndexBuffer { get; set; }
	public virtual UIntPtr IndexBufferOffset { get; set; }
	public virtual MTLIndexType IndexType { get; set; }
	public virtual MTLMotionKeyframeData[] RadiusBuffers { get; set; }
	public virtual MTLAttributeFormat RadiusFormat { get; set; }
	public virtual UIntPtr RadiusStride { get; set; }
	public virtual UIntPtr SegmentControlPointCount { get; set; }
	public virtual UIntPtr SegmentCount { get; set; }
	// methods
	public static MTLAccelerationStructureMotionCurveGeometryDescriptor GetDescriptor ();
}

New Type: Metal.MTLAccelerationStructurePassDescriptor

public class MTLAccelerationStructurePassDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLAccelerationStructurePassDescriptor ();
	protected MTLAccelerationStructurePassDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructurePassDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public static MTLAccelerationStructurePassDescriptor AccelerationStructurePassDescriptor { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray SampleBufferAttachments { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLAccelerationStructurePassSampleBufferAttachmentDescriptor

public class MTLAccelerationStructurePassSampleBufferAttachmentDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLAccelerationStructurePassSampleBufferAttachmentDescriptor ();
	protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual UIntPtr EndOfEncoderSampleIndex { get; set; }
	public virtual IMTLCounterSampleBuffer SampleBuffer { get; set; }
	public virtual UIntPtr StartOfEncoderSampleIndex { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray

public class MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray : Foundation.NSObject {
	// constructors
	public MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray ();
	protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual MTLAccelerationStructurePassSampleBufferAttachmentDescriptor GetObject (UIntPtr attachmentIndex);
	public virtual void SetObject (MTLAccelerationStructurePassSampleBufferAttachmentDescriptor attachment, UIntPtr attachmentIndex);
}

New Type: Metal.MTLAccelerationStructureRefitOptions

[Serializable]
[Flags]
public enum MTLAccelerationStructureRefitOptions {
	PerPrimitiveData = 2,
	VertexData = 1,
}

New Type: Metal.MTLArchitecture

public class MTLArchitecture : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLArchitecture ();
	protected MTLArchitecture (Foundation.NSObjectFlag t);
	protected MTLArchitecture (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Name { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLBindingAccess

[Serializable]
public enum MTLBindingAccess {
	ReadOnly = 0,
	ReadWrite = 1,
	WriteOnly = 2,
}

New Type: Metal.MTLBindingType

[Serializable]
public enum MTLBindingType {
	Buffer = 0,
	Imageblock = 17,
	ImageblockData = 16,
	InstanceAccelerationStructure = 26,
	IntersectionFunctionTable = 27,
	ObjectPayload = 34,
	PrimitiveAccelerationStructure = 25,
	Sampler = 3,
	Texture = 2,
	ThreadgroupMemory = 1,
	VisibleFunctionTable = 24,
}

New Type: Metal.MTLBuffer_Extensions

public static class MTLBuffer_Extensions {
	// methods
	public static ulong GetGpuAddress (this IMTLBuffer This);
}

New Type: Metal.MTLCommandBuffer_Extensions

public static class MTLCommandBuffer_Extensions {
	// methods
	public static IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (this IMTLCommandBuffer This, MTLAccelerationStructurePassDescriptor descriptor);
}

New Type: Metal.MTLCompileSymbolVisibility

[Serializable]
public enum MTLCompileSymbolVisibility {
	Default = 0,
	Hidden = 1,
}

New Type: Metal.MTLComputeCommandEncoder_Extensions

public static class MTLComputeCommandEncoder_Extensions {
	// methods
	public static void SetBuffer (this IMTLComputeCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
	public static void SetBufferOffset (this IMTLComputeCommandEncoder This, UIntPtr offset, UIntPtr stride, UIntPtr index);
	public static void SetBuffers (this IMTLComputeCommandEncoder This, IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range);
	public static void SetBytes (this IMTLComputeCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index);
}

New Type: Metal.MTLComputePipelineState_Extensions

public static class MTLComputePipelineState_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceId (this IMTLComputePipelineState This);
}

New Type: Metal.MTLCurveBasis

[Serializable]
public enum MTLCurveBasis {
	BSpline = 0,
	Bezier = 3,
	CatmullRom = 1,
	Linear = 2,
}

New Type: Metal.MTLCurveEndCaps

[Serializable]
public enum MTLCurveEndCaps {
	Disk = 1,
	None = 0,
	Sphere = 2,
}

New Type: Metal.MTLCurveType

[Serializable]
public enum MTLCurveType {
	Flat = 1,
	Round = 0,
}

New Type: Metal.MTLHeap_Extensions

public static class MTLHeap_Extensions {
	// methods
	public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, MTLAccelerationStructureDescriptor descriptor);
	public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, UIntPtr size);
	public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, MTLAccelerationStructureDescriptor descriptor, UIntPtr offset);
	public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, UIntPtr size, UIntPtr offset);
}

New Type: Metal.MTLIOCommandQueueType

[Serializable]
public enum MTLIOCommandQueueType {
	Concurrent = 0,
	Serial = 1,
}

New Type: Metal.MTLIOCompressionContext

public class MTLIOCompressionContext : ObjCRuntime.DisposableObject {
	// properties
	public static IntPtr DefaultChunkSize { get; }
	// methods
	public void AppendData (Foundation.NSData data);
	public void AppendData (byte[] data);
	public void AppendData (System.ReadOnlySpan<byte> data);
	public static MTLIOCompressionContext Create (string path, MTLIOCompressionMethod type, long chunkSize);
	protected override void Dispose (bool disposing);
	public MTLIOCompressionStatus FlushAndDestroy ();
}

New Type: Metal.MTLIOCompressionMethod

[Serializable]
public enum MTLIOCompressionMethod {
	Lz4 = 2,
	LzBitmap = 4,
	Lzfse = 1,
	Lzma = 3,
	Zlib = 0,
}

New Type: Metal.MTLIOCompressionStatus

[Serializable]
public enum MTLIOCompressionStatus {
	Complete = 0,
	Error = 1,
}

New Type: Metal.MTLIOError

[Serializable]
public enum MTLIOError {
	Internal = 2,
	UrlInvalid = 1,
}

New Type: Metal.MTLIOErrorExtensions

public static class MTLIOErrorExtensions {
	// methods
	public static Foundation.NSString GetDomain (this MTLIOError self);
}

New Type: Metal.MTLIOPriority

[Serializable]
public enum MTLIOPriority {
	High = 0,
	Low = 2,
	Normal = 1,
}

New Type: Metal.MTLIOStatus

[Serializable]
public enum MTLIOStatus {
	Cancelled = 1,
	Complete = 3,
	Error = 2,
	Pending = 0,
}

New Type: Metal.MTLIndirectCommandBuffer_Extensions

public static class MTLIndirectCommandBuffer_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceID (this IMTLIndirectCommandBuffer This);
}

New Type: Metal.MTLIndirectComputeCommand_Extensions

public static class MTLIndirectComputeCommand_Extensions {
	// methods
	public static void SetKernelBuffer (this IMTLIndirectComputeCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
}

New Type: Metal.MTLIndirectInstanceAccelerationStructureDescriptor

public class MTLIndirectInstanceAccelerationStructureDescriptor : Metal.MTLAccelerationStructureDescriptor {
	// constructors
	public MTLIndirectInstanceAccelerationStructureDescriptor ();
	protected MTLIndirectInstanceAccelerationStructureDescriptor (Foundation.NSObjectFlag t);
	protected MTLIndirectInstanceAccelerationStructureDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IMTLBuffer InstanceCountBuffer { get; set; }
	public virtual UIntPtr InstanceCountBufferOffset { get; set; }
	public virtual IMTLBuffer InstanceDescriptorBuffer { get; set; }
	public virtual UIntPtr InstanceDescriptorBufferOffset { get; set; }
	public virtual UIntPtr InstanceDescriptorStride { get; set; }
	public virtual MTLAccelerationStructureInstanceDescriptorType InstanceDescriptorType { get; set; }
	public virtual UIntPtr MaxInstanceCount { get; set; }
	public virtual UIntPtr MaxMotionTransformCount { get; set; }
	public virtual IMTLBuffer MotionTransformBuffer { get; set; }
	public virtual UIntPtr MotionTransformBufferOffset { get; set; }
	public virtual IMTLBuffer MotionTransformCountBuffer { get; set; }
	public virtual UIntPtr MotionTransformCountBufferOffset { get; set; }
	// methods
	public static MTLIndirectInstanceAccelerationStructureDescriptor GetDescriptor ();
}

New Type: Metal.MTLIndirectRenderCommand_Extensions

public static class MTLIndirectRenderCommand_Extensions {
	// methods
	public static void ClearBarrier (this IMTLIndirectRenderCommand This);
	public static void DrawMeshThreadgroups (this IMTLIndirectRenderCommand This, MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void DrawMeshThreads (this IMTLIndirectRenderCommand This, MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void SetBarrier (this IMTLIndirectRenderCommand This);
	public static void SetMeshBuffer (this IMTLIndirectRenderCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
	public static void SetObjectBuffer (this IMTLIndirectRenderCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
	public static void SetObjectThreadgroupMemoryLength (this IMTLIndirectRenderCommand This, UIntPtr length, UIntPtr index);
	public static void SetVertexBuffer (this IMTLIndirectRenderCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
}

New Type: Metal.MTLIntersectionFunctionTable_Extensions

public static class MTLIntersectionFunctionTable_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceId (this IMTLIntersectionFunctionTable This);
	public static void SetOpaqueCurveIntersectionFunction (this IMTLIntersectionFunctionTable This, MTLIntersectionFunctionSignature signature, Foundation.NSRange range);
	public static void SetOpaqueCurveIntersectionFunction (this IMTLIntersectionFunctionTable This, MTLIntersectionFunctionSignature signature, UIntPtr index);
}

New Type: Metal.MTLLibraryOptimizationLevel

[Serializable]
public enum MTLLibraryOptimizationLevel {
	Default = 0,
	Size = 1,
}

New Type: Metal.MTLMeshRenderPipelineDescriptor

public class MTLMeshRenderPipelineDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLMeshRenderPipelineDescriptor ();
	protected MTLMeshRenderPipelineDescriptor (Foundation.NSObjectFlag t);
	protected MTLMeshRenderPipelineDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual bool AlphaToCoverageEnabled { get; set; }
	public virtual bool AlphaToOneEnabled { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MTLRenderPipelineColorAttachmentDescriptorArray ColorAttachments { get; }
	public virtual MTLPixelFormat DepthAttachmentPixelFormat { get; set; }
	public virtual MTLPipelineBufferDescriptorArray FragmentBuffers { get; }
	public virtual IMTLFunction FragmentFunction { get; set; }
	public virtual MTLLinkedFunctions FragmentLinkedFunctions { get; set; }
	public virtual string Label { get; set; }
	public virtual UIntPtr MaxTotalThreadgroupsPerMeshGrid { get; set; }
	public virtual UIntPtr MaxTotalThreadsPerMeshThreadgroup { get; set; }
	public virtual UIntPtr MaxTotalThreadsPerObjectThreadgroup { get; set; }
	public virtual UIntPtr MaxVertexAmplificationCount { get; set; }
	public virtual MTLPipelineBufferDescriptorArray MeshBuffers { get; }
	public virtual IMTLFunction MeshFunction { get; set; }
	public virtual MTLLinkedFunctions MeshLinkedFunctions { get; set; }
	public virtual bool MeshThreadgroupSizeIsMultipleOfThreadExecutionWidth { get; set; }
	public virtual MTLPipelineBufferDescriptorArray ObjectBuffers { get; }
	public virtual IMTLFunction ObjectFunction { get; set; }
	public virtual MTLLinkedFunctions ObjectLinkedFunctions { get; set; }
	public virtual bool ObjectThreadgroupSizeIsMultipleOfThreadExecutionWidth { get; set; }
	public virtual UIntPtr PayloadMemoryLength { get; set; }
	public virtual UIntPtr RasterSampleCount { get; set; }
	public virtual bool RasterizationEnabled { get; set; }
	public virtual MTLPixelFormat StencilAttachmentPixelFormat { get; set; }
	public virtual bool SupportIndirectCommandBuffers { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void Reset ();
}

New Type: Metal.MTLRenderCommandEncoder_Extensions

public static class MTLRenderCommandEncoder_Extensions {
	// methods
	public static void DrawMeshThreadgroups (this IMTLRenderCommandEncoder This, MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void DrawMeshThreadgroups (this IMTLRenderCommandEncoder This, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void DrawMeshThreads (this IMTLRenderCommandEncoder This, MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void MemoryBarrier (this IMTLRenderCommandEncoder This, MTLBarrierScope scope, MTLRenderStages after, MTLRenderStages before);
	public static void MemoryBarrier (this IMTLRenderCommandEncoder This, IMTLResource[] resources, UIntPtr count, MTLRenderStages after, MTLRenderStages before);
	public static void SetMeshBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
	public static void SetMeshBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr index);
	public static void SetMeshBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
	public static void SetMeshBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr index);
	public static void SetMeshSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, UIntPtr index);
	public static void SetMeshSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index);
	public static void SetMeshSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, Foundation.NSRange range);
	public static void SetMeshSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
	public static void SetMeshTexture (this IMTLRenderCommandEncoder This, IMTLTexture texture, UIntPtr index);
	public static void SetMeshTextures (this IMTLRenderCommandEncoder This, IntPtr textures, Foundation.NSRange range);
	public static void SetObjectBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
	public static void SetObjectBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr index);
	public static void SetObjectBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
	public static void SetObjectBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr index);
	public static void SetObjectSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, UIntPtr index);
	public static void SetObjectSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index);
	public static void SetObjectSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, Foundation.NSRange range);
	public static void SetObjectSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
	public static void SetObjectTexture (this IMTLRenderCommandEncoder This, IMTLTexture texture, UIntPtr index);
	public static void SetObjectTextures (this IMTLRenderCommandEncoder This, IntPtr textures, Foundation.NSRange range);
	public static void SetObjectThreadgroupMemoryLength (this IMTLRenderCommandEncoder This, UIntPtr length, UIntPtr index);
	public static void SetVertexBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
	public static void SetVertexBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr stride, UIntPtr index);
	public static void SetVertexBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range);
	public static void SetVertexBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index);
}

New Type: Metal.MTLRenderPipelineState_Extensions

public static class MTLRenderPipelineState_Extensions {
	// methods
	public static UIntPtr GetMaxTotalThreadsPerMeshThreadgroup (this IMTLRenderPipelineState This);
	public static UIntPtr GetMaxTotalThreadsPerObjectThreadgroup (this IMTLRenderPipelineState This);
	public static UIntPtr GetObjectThreadExecutionWidth (this IMTLRenderPipelineState This);
}

New Type: Metal.MTLResourceId

public struct MTLResourceId {
	// fields
	public ulong Impl;
}

New Type: Metal.MTLSamplerState_Extensions

public static class MTLSamplerState_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceId (this IMTLSamplerState This);
}

New Type: Metal.MTLSparsePageSize

[Serializable]
public enum MTLSparsePageSize {
	Size16 = 101,
	Size256 = 103,
	Size64 = 102,
}

New Type: Metal.MTLTexture_Extensions

public static class MTLTexture_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceId (this IMTLTexture This);
}

New Type: Metal.MTLVisibleFunctionTable_Extensions

public static class MTLVisibleFunctionTable_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceId (this IMTLVisibleFunctionTable This);
}

Namespace MetalFX

Type Changed: MetalFX.IMTLFXSpatialScaler

Modified properties:

-public abstract MTLFXSpatialScalerColorProcessingMode ColorProcessingMode { get; }
+public virtual MTLFXSpatialScalerColorProcessingMode ColorProcessingMode { get; }
-public abstract Metal.IMTLTexture ColorTexture { get; set; }
+public virtual Metal.IMTLTexture ColorTexture { get; set; }
-public abstract Metal.MTLPixelFormat ColorTextureFormat { get; }
+public virtual Metal.MTLPixelFormat ColorTextureFormat { get; }
-public abstract Metal.MTLTextureUsage ColorTextureUsage { get; }
+public virtual Metal.MTLTextureUsage ColorTextureUsage { get; }
-public abstract Metal.IMTLFence Fence { get; set; }
+public virtual Metal.IMTLFence Fence { get; set; }
-public abstract UIntPtr InputContentHeight { get; set; }
+public virtual UIntPtr InputContentHeight { get; set; }
-public abstract UIntPtr InputContentWidth { get; set; }
+public virtual UIntPtr InputContentWidth { get; set; }
-public abstract UIntPtr InputHeight { get; }
+public virtual UIntPtr InputHeight { get; }
-public abstract UIntPtr InputWidth { get; }
+public virtual UIntPtr InputWidth { get; }
-public abstract UIntPtr OutputHeight { get; }
+public virtual UIntPtr OutputHeight { get; }
-public abstract Metal.IMTLTexture OutputTexture { get; set; }
+public virtual Metal.IMTLTexture OutputTexture { get; set; }
-public abstract Metal.MTLPixelFormat OutputTextureFormat { get; }
+public virtual Metal.MTLPixelFormat OutputTextureFormat { get; }
-public abstract Metal.MTLTextureUsage OutputTextureUsage { get; }
+public virtual Metal.MTLTextureUsage OutputTextureUsage { get; }
-public abstract UIntPtr OutputWidth { get; }
+public virtual UIntPtr OutputWidth { get; }

Modified methods:

-public abstract void Encode (Metal.IMTLCommandBuffer commandBuffer)
+public virtual void Encode (Metal.IMTLCommandBuffer commandBuffer)

Type Changed: MetalFX.IMTLFXTemporalScaler

Modified properties:

-public abstract Metal.IMTLTexture ColorTexture { get; set; }
+public virtual Metal.IMTLTexture ColorTexture { get; set; }
-public abstract Metal.MTLPixelFormat ColorTextureFormat { get; }
+public virtual Metal.MTLPixelFormat ColorTextureFormat { get; }
-public abstract Metal.MTLTextureUsage ColorTextureUsage { get; }
+public virtual Metal.MTLTextureUsage ColorTextureUsage { get; }
-public abstract bool DepthReversed { get; set; }
+public virtual bool DepthReversed { get; set; }
-public abstract Metal.IMTLTexture DepthTexture { get; set; }
+public virtual Metal.IMTLTexture DepthTexture { get; set; }
-public abstract Metal.MTLPixelFormat DepthTextureFormat { get; }
+public virtual Metal.MTLPixelFormat DepthTextureFormat { get; }
-public abstract Metal.MTLTextureUsage DepthTextureUsage { get; }
+public virtual Metal.MTLTextureUsage DepthTextureUsage { get; }
-public abstract Metal.IMTLTexture ExposureTexture { get; set; }
+public virtual Metal.IMTLTexture ExposureTexture { get; set; }
-public abstract Metal.IMTLFence Fence { get; set; }
+public virtual Metal.IMTLFence Fence { get; set; }
-public abstract UIntPtr InputContentHeight { get; set; }
+public virtual UIntPtr InputContentHeight { get; set; }
-public abstract float InputContentMaxScale { get; }
+public virtual float InputContentMaxScale { get; }
-public abstract float InputContentMinScale { get; }
+public virtual float InputContentMinScale { get; }
-public abstract UIntPtr InputContentWidth { get; set; }
+public virtual UIntPtr InputContentWidth { get; set; }
-public abstract UIntPtr InputHeight { get; }
+public virtual UIntPtr InputHeight { get; }
-public abstract UIntPtr InputWidth { get; }
+public virtual UIntPtr InputWidth { get; }
-public abstract float JitterOffsetX { get; set; }
+public virtual float JitterOffsetX { get; set; }
-public abstract float JitterOffsetY { get; set; }
+public virtual float JitterOffsetY { get; set; }
-public abstract Metal.IMTLTexture MotionTexture { get; set; }
+public virtual Metal.IMTLTexture MotionTexture { get; set; }
-public abstract Metal.MTLPixelFormat MotionTextureFormat { get; }
+public virtual Metal.MTLPixelFormat MotionTextureFormat { get; }
-public abstract Metal.MTLTextureUsage MotionTextureUsage { get; }
+public virtual Metal.MTLTextureUsage MotionTextureUsage { get; }
-public abstract float MotionVectorScaleX { get; set; }
+public virtual float MotionVectorScaleX { get; set; }
-public abstract float MotionVectorScaleY { get; set; }
+public virtual float MotionVectorScaleY { get; set; }
-public abstract UIntPtr OutputHeight { get; }
+public virtual UIntPtr OutputHeight { get; }
-public abstract Metal.IMTLTexture OutputTexture { get; set; }
+public virtual Metal.IMTLTexture OutputTexture { get; set; }
-public abstract Metal.MTLPixelFormat OutputTextureFormat { get; }
+public virtual Metal.MTLPixelFormat OutputTextureFormat { get; }
-public abstract Metal.MTLTextureUsage OutputTextureUsage { get; }
+public virtual Metal.MTLTextureUsage OutputTextureUsage { get; }
-public abstract UIntPtr OutputWidth { get; }
+public virtual UIntPtr OutputWidth { get; }
-public abstract float PreExposure { get; set; }
+public virtual float PreExposure { get; set; }
-public abstract bool Reset { get; set; }
+public virtual bool Reset { get; set; }

Added properties:

public virtual Metal.IMTLTexture ReactiveMaskTexture { get; set; }
public virtual Metal.MTLTextureUsage ReactiveTextureUsage { get; }

Modified methods:

-public abstract void Encode (Metal.IMTLCommandBuffer commandBuffer)
+public virtual void Encode (Metal.IMTLCommandBuffer commandBuffer)

Type Changed: MetalFX.MTLFXTemporalScalerDescriptor

Added properties:

public virtual bool ReactiveMaskTextureEnabled { get; set; }
public virtual Metal.MTLPixelFormat ReactiveMaskTextureFormat { get; set; }

Namespace MetalKit

Type Changed: MetalKit.IMTKViewDelegate

Modified methods:

-public abstract void Draw (MTKView view)
+public virtual void Draw (MTKView view)
-public abstract void DrawableSizeWillChange (MTKView view, CoreGraphics.CGSize size)
+public virtual void DrawableSizeWillChange (MTKView view, CoreGraphics.CGSize size)

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.IMPSCnnBatchNormalizationDataSource

Modified properties:

-public abstract IntPtr Beta { get; }
+public virtual IntPtr Beta { get; }
-public abstract IntPtr Gamma { get; }
+public virtual IntPtr Gamma { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract bool Load { get; }
+public virtual bool Load { get; }
-public abstract IntPtr Mean { get; }
+public virtual IntPtr Mean { get; }
-public abstract UIntPtr NumberOfFeatureChannels { get; }
+public virtual UIntPtr NumberOfFeatureChannels { get; }
-public abstract IntPtr Variance { get; }
+public virtual IntPtr Variance { get; }

Added property:

public virtual float Epsilon { get; }

Modified methods:

-public abstract void Purge ()
+public virtual void Purge ()

Added methods:

public virtual IMPSCnnBatchNormalizationDataSource Copy (Foundation.NSZone zone, Metal.IMTLDevice device);
public static T CreateInstance<T> (Foundation.NSCoder decoder);
public virtual void Encode (Foundation.NSCoder coder);
public static bool GetSupportsSecureCoding<T> ();
public virtual bool UpdateGammaAndBeta (MPSCnnBatchNormalizationState batchNormalizationState);
public virtual MPSCnnNormalizationGammaAndBetaState UpdateGammaAndBeta (Metal.IMTLCommandBuffer commandBuffer, MPSCnnBatchNormalizationState batchNormalizationState);
public virtual bool UpdateMeanAndVariance (MPSCnnBatchNormalizationState batchNormalizationState);
public virtual MPSCnnNormalizationMeanAndVarianceState UpdateMeanAndVariance (Metal.IMTLCommandBuffer commandBuffer, MPSCnnBatchNormalizationState batchNormalizationState);

Type Changed: MetalPerformanceShaders.IMPSCnnConvolutionDataSource

Modified properties:

-public abstract IntPtr BiasTerms { get; }
+public virtual IntPtr BiasTerms { get; }
-public abstract MPSDataType DataType { get; }
+public virtual MPSDataType DataType { get; }
-public abstract MPSCnnConvolutionDescriptor Descriptor { get; }
+public virtual MPSCnnConvolutionDescriptor Descriptor { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract IntPtr Weights { get; }
+public virtual IntPtr Weights { get; }

Added property:

public virtual MPSDataType KernelWeightsDataType { get; }

Modified methods:

-public abstract bool Load ()
+public virtual bool Load ()
-public abstract void Purge ()
+public virtual void Purge ()

Added methods:

public virtual IMPSCnnConvolutionDataSource Copy (Foundation.NSZone zone, Metal.IMTLDevice device);
public virtual IntPtr GetLookupTableForUInt8Kernel ();
public virtual IntPtr GetRangesForUInt8Kernel ();
public virtual MPSCnnWeightsQuantizationType GetWeightsQuantizationType ();
public virtual bool Update (MPSCnnConvolutionGradientState gradientState, MPSCnnConvolutionWeightsAndBiasesState sourceState);
public virtual MPSCnnConvolutionWeightsAndBiasesState Update (Metal.IMTLCommandBuffer commandBuffer, MPSCnnConvolutionGradientState gradientState, MPSCnnConvolutionWeightsAndBiasesState sourceState);

Type Changed: MetalPerformanceShaders.IMPSCnnInstanceNormalizationDataSource

Modified properties:

-public abstract IntPtr Beta { get; }
+public virtual IntPtr Beta { get; }
-public abstract IntPtr Gamma { get; }
+public virtual IntPtr Gamma { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr NumberOfFeatureChannels { get; }
+public virtual UIntPtr NumberOfFeatureChannels { get; }

Added methods:

public virtual IMPSCnnInstanceNormalizationDataSource Copy (Foundation.NSZone zone, Metal.IMTLDevice device);
public static T CreateInstance<T> (Foundation.NSCoder decoder);
public virtual void Encode (Foundation.NSCoder coder);
public virtual float GetEpsilon ();
public virtual bool UpdateGammaAndBeta (MPSCnnInstanceNormalizationGradientState[] instanceNormalizationStateBatch);
public virtual MPSCnnNormalizationGammaAndBetaState UpdateGammaAndBeta (Metal.IMTLCommandBuffer commandBuffer, MPSCnnInstanceNormalizationGradientState[] instanceNormalizationStateBatch);

Type Changed: MetalPerformanceShaders.IMPSDeviceProvider

Modified methods:

-public abstract Metal.IMTLDevice GetMTLDevice ()
+public virtual Metal.IMTLDevice GetMTLDevice ()

Type Changed: MetalPerformanceShaders.IMPSHandle

Modified properties:

-public abstract string Label { get; }
+public virtual string Label { get; }

Type Changed: MetalPerformanceShaders.IMPSHeapProvider

Modified methods:

-public abstract Metal.IMTLHeap GetNewHeap (Metal.MTLHeapDescriptor descriptor)
+public virtual Metal.IMTLHeap GetNewHeap (Metal.MTLHeapDescriptor descriptor)

Added method:

public virtual void RetireHeap (Metal.IMTLHeap heap, double seconds);

Type Changed: MetalPerformanceShaders.IMPSImageAllocator

Modified methods:

-public abstract MPSImage GetImage (Metal.IMTLCommandBuffer cmdBuf, MPSImageDescriptor descriptor, MPSKernel kernel)
+public virtual MPSImage GetImage (Metal.IMTLCommandBuffer cmdBuf, MPSImageDescriptor descriptor, MPSKernel kernel)

Added method:

public virtual Foundation.NSArray<MPSImage> GetImageBatch (Metal.IMTLCommandBuffer commandBuffer, MPSImageDescriptor descriptor, MPSKernel kernel, UIntPtr count);

Type Changed: MetalPerformanceShaders.IMPSImageSizeEncodingState

Modified properties:

-public abstract UIntPtr SourceHeight { get; }
+public virtual UIntPtr SourceHeight { get; }
-public abstract UIntPtr SourceWidth { get; }
+public virtual UIntPtr SourceWidth { get; }

Type Changed: MetalPerformanceShaders.IMPSImageTransformProvider

Modified methods:

-public abstract MPSScaleTransform GetTransform (MPSImage image, IMPSHandle handle)
+public virtual MPSScaleTransform GetTransform (MPSImage image, IMPSHandle handle)

Type Changed: MetalPerformanceShaders.IMPSNDArrayAllocator

Modified methods:

-public abstract MPSNDArray AllocateArray (Metal.IMTLCommandBuffer cmdBuf, MPSNDArrayDescriptor descriptor, MPSKernel kernel)
+public virtual MPSNDArray AllocateArray (Metal.IMTLCommandBuffer cmdBuf, MPSNDArrayDescriptor descriptor, MPSKernel kernel)

Type Changed: MetalPerformanceShaders.IMPSNNLossCallback

Modified methods:

-public abstract float GetScalarWeight (MPSImage sourceImage, MPSImage destinationImage)
+public virtual float GetScalarWeight (MPSImage sourceImage, MPSImage destinationImage)

Type Changed: MetalPerformanceShaders.IMPSNNPadding

Modified properties:

-public abstract MPSNNPaddingMethod PaddingMethod { get; }
+public virtual MPSNNPaddingMethod PaddingMethod { get; }

Added methods:

public virtual MPSImageDescriptor GetDestinationImageDescriptor (MPSImage[] sourceImages, MPSState[] sourceStates, MPSKernel kernel, MPSImageDescriptor inDescriptor);
public virtual IMPSNNPadding GetInverse ();
public virtual string GetLabel ();

Type Changed: MetalPerformanceShaders.IMPSNNTrainableNode

Modified properties:

-public abstract MPSNNTrainingStyle TrainingStyle { get; set; }
+public virtual MPSNNTrainingStyle TrainingStyle { get; set; }

Type Changed: MetalPerformanceShaders.MPSCommandBuffer

Added method:

public virtual Metal.IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (Metal.MTLAccelerationStructurePassDescriptor descriptor);

Namespace MetricKit

Type Changed: MetricKit.IMXMetricManagerSubscriber

Added methods:

public virtual void DidReceiveDiagnosticPayloads (MXDiagnosticPayload[] payloads);
public virtual void DidReceiveMetricPayloads (MXMetricPayload[] payloads);

Namespace ModelIO

Type Changed: ModelIO.IMDLAssetResolver

Modified methods:

-public abstract bool CanResolveAsset (string name)
+public virtual bool CanResolveAsset (string name)
-public abstract Foundation.NSUrl ResolveAsset (string name)
+public virtual Foundation.NSUrl ResolveAsset (string name)

Type Changed: ModelIO.IMDLLightProbeIrradianceDataSource

Modified properties:

-public abstract MDLAxisAlignedBoundingBox BoundingBox { get; set; }
+public virtual MDLAxisAlignedBoundingBox BoundingBox { get; set; }

Added property:

public virtual UIntPtr SphericalHarmonicsLevel { get; set; }

Added method:

public virtual Foundation.NSData GetSphericalHarmonicsCoefficients (System.Numerics.Vector3 position);

Type Changed: ModelIO.IMDLMeshBuffer

Modified properties:

-public abstract IMDLMeshBufferAllocator Allocator { get; }
+public virtual IMDLMeshBufferAllocator Allocator { get; }
-public abstract UIntPtr Length { get; }
+public virtual UIntPtr Length { get; }
-public abstract MDLMeshBufferMap Map { get; }
+public virtual MDLMeshBufferMap Map { get; }
-public abstract MDLMeshBufferType Type { get; }
+public virtual MDLMeshBufferType Type { get; }
-public abstract IMDLMeshBufferZone Zone { get; }
+public virtual IMDLMeshBufferZone Zone { get; }

Modified methods:

-public abstract void FillData (Foundation.NSData data, UIntPtr offset)
+public virtual void FillData (Foundation.NSData data, UIntPtr offset)

Type Changed: ModelIO.IMDLMeshBufferAllocator

Modified methods:

-public abstract IMDLMeshBuffer CreateBuffer (Foundation.NSData data, MDLMeshBufferType type)
+public virtual IMDLMeshBuffer CreateBuffer (Foundation.NSData data, MDLMeshBufferType type)
-public abstract IMDLMeshBuffer CreateBuffer (UIntPtr length, MDLMeshBufferType type)
+public virtual IMDLMeshBuffer CreateBuffer (UIntPtr length, MDLMeshBufferType type)
-public abstract IMDLMeshBuffer CreateBuffer (IMDLMeshBufferZone zone, Foundation.NSData data, MDLMeshBufferType type)
+public virtual IMDLMeshBuffer CreateBuffer (IMDLMeshBufferZone zone, Foundation.NSData data, MDLMeshBufferType type)
-public abstract IMDLMeshBuffer CreateBuffer (IMDLMeshBufferZone zone, UIntPtr length, MDLMeshBufferType type)
+public virtual IMDLMeshBuffer CreateBuffer (IMDLMeshBufferZone zone, UIntPtr length, MDLMeshBufferType type)
-public abstract IMDLMeshBufferZone CreateZone (UIntPtr capacity)
+public virtual IMDLMeshBufferZone CreateZone (UIntPtr capacity)
-public abstract IMDLMeshBufferZone CreateZone (Foundation.NSNumber[] sizes, Foundation.NSNumber[] types)
+public virtual IMDLMeshBufferZone CreateZone (Foundation.NSNumber[] sizes, Foundation.NSNumber[] types)

Type Changed: ModelIO.IMDLMeshBufferZone

Modified properties:

-public abstract IMDLMeshBufferAllocator Allocator { get; }
+public virtual IMDLMeshBufferAllocator Allocator { get; }
-public abstract UIntPtr Capacity { get; }
+public virtual UIntPtr Capacity { get; }

Type Changed: ModelIO.IMDLNamed

Modified properties:

-public abstract string Name { get; set; }
+public virtual string Name { get; set; }

Type Changed: ModelIO.IMDLObjectContainerComponent

Modified properties:

-public abstract UIntPtr Count { get; }
+public virtual UIntPtr Count { get; }
-public abstract MDLObject[] Objects { get; }
+public virtual MDLObject[] Objects { get; }

Modified methods:

-public abstract void AddObject (MDLObject object)
+public virtual void AddObject (MDLObject object)
-public abstract MDLObject GetObject (UIntPtr index)
+public virtual MDLObject GetObject (UIntPtr index)
-public abstract void RemoveObject (MDLObject object)
+public virtual void RemoveObject (MDLObject object)

Type Changed: ModelIO.IMDLTransformComponent

Modified properties:

-public abstract Foundation.NSNumber[] KeyTimes { get; }
+public virtual Foundation.NSNumber[] KeyTimes { get; }
-public abstract CoreGraphics.NMatrix4 Matrix { get; set; }
+public virtual CoreGraphics.NMatrix4 Matrix { get; set; }
-public abstract double MaximumTime { get; }
+public virtual double MaximumTime { get; }
-public abstract double MinimumTime { get; }
+public virtual double MinimumTime { get; }
-public abstract bool ResetsTransform { get; set; }
+public virtual bool ResetsTransform { get; set; }

Added methods:

public static CoreGraphics.NMatrix4 CreateGlobalTransform<T> (MDLObject obj, double atTime);
public virtual CoreGraphics.NMatrix4 GetLocalTransform (double atTime);
public virtual void SetLocalTransform (CoreGraphics.NMatrix4 transform);
public virtual void SetLocalTransform (CoreGraphics.NMatrix4 transform, double time);

Type Changed: ModelIO.IMDLTransformOp

Modified properties:

-public abstract bool IsInverseOp { get; }
+public virtual bool IsInverseOp { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }

Modified methods:

-public abstract CoreGraphics.NMatrix4 GetNMatrix4 (double atTime)
+public virtual CoreGraphics.NMatrix4 GetNMatrix4 (double atTime)
-public abstract CoreGraphics.NMatrix4d GetNMatrix4d (double atTime)
+public virtual CoreGraphics.NMatrix4d GetNMatrix4d (double atTime)

Type Changed: ModelIO.MDLMaterial

Added properties:

public MDLMaterialProperty Item { get; }
public MDLMaterialProperty Item { get; }

Namespace MultipeerConnectivity

Type Changed: MultipeerConnectivity.IMCAdvertiserAssistantDelegate

Added methods:

public virtual void DidDismissInvitation (MCAdvertiserAssistant advertiserAssistant);
public virtual void WillPresentInvitation (MCAdvertiserAssistant advertiserAssistant);

Type Changed: MultipeerConnectivity.IMCBrowserViewControllerDelegate

Modified methods:

-public abstract void DidFinish (MCBrowserViewController browserViewController)
+public virtual void DidFinish (MCBrowserViewController browserViewController)
-public abstract void WasCancelled (MCBrowserViewController browserViewController)
+public virtual void WasCancelled (MCBrowserViewController browserViewController)

Added method:

public virtual bool ShouldPresentNearbyPeer (MCBrowserViewController browserViewController, MCPeerID peerID, Foundation.NSDictionary info);

Type Changed: MultipeerConnectivity.IMCNearbyServiceAdvertiserDelegate

Modified methods:

-public abstract void DidReceiveInvitationFromPeer (MCNearbyServiceAdvertiser advertiser, MCPeerID peerID, Foundation.NSData context, MCNearbyServiceAdvertiserInvitationHandler invitationHandler)
+public virtual void DidReceiveInvitationFromPeer (MCNearbyServiceAdvertiser advertiser, MCPeerID peerID, Foundation.NSData context, MCNearbyServiceAdvertiserInvitationHandler invitationHandler)

Added method:

public virtual void DidNotStartAdvertisingPeer (MCNearbyServiceAdvertiser advertiser, Foundation.NSError error);

Type Changed: MultipeerConnectivity.IMCNearbyServiceBrowserDelegate

Modified methods:

-public abstract void FoundPeer (MCNearbyServiceBrowser browser, MCPeerID peerID, Foundation.NSDictionary info)
+public virtual void FoundPeer (MCNearbyServiceBrowser browser, MCPeerID peerID, Foundation.NSDictionary info)
-public abstract void LostPeer (MCNearbyServiceBrowser browser, MCPeerID peerID)
+public virtual void LostPeer (MCNearbyServiceBrowser browser, MCPeerID peerID)

Added method:

public virtual void DidNotStartBrowsingForPeers (MCNearbyServiceBrowser browser, Foundation.NSError error);

Type Changed: MultipeerConnectivity.IMCSessionDelegate

Modified methods:

-public abstract void DidChangeState (MCSession session, MCPeerID peerID, MCSessionState state)
+public virtual void DidChangeState (MCSession session, MCPeerID peerID, MCSessionState state)
-public abstract void DidFinishReceivingResource (MCSession session, string resourceName, MCPeerID fromPeer, Foundation.NSUrl localUrl, Foundation.NSError error)
+public virtual void DidFinishReceivingResource (MCSession session, string resourceName, MCPeerID fromPeer, Foundation.NSUrl localUrl, Foundation.NSError error)
-public abstract void DidReceiveData (MCSession session, Foundation.NSData data, MCPeerID peerID)
+public virtual void DidReceiveData (MCSession session, Foundation.NSData data, MCPeerID peerID)
-public abstract void DidReceiveStream (MCSession session, Foundation.NSInputStream stream, string streamName, MCPeerID peerID)
+public virtual void DidReceiveStream (MCSession session, Foundation.NSInputStream stream, string streamName, MCPeerID peerID)
-public abstract void DidStartReceivingResource (MCSession session, string resourceName, MCPeerID fromPeer, Foundation.NSProgress progress)
+public virtual void DidStartReceivingResource (MCSession session, string resourceName, MCPeerID fromPeer, Foundation.NSProgress progress)

Added method:

public virtual bool DidReceiveCertificate (MCSession session, Security.SecCertificate[] certificate, MCPeerID peerID, System.Action<bool> certificateHandler);

Namespace NearbyInteraction

Type Changed: NearbyInteraction.INIDeviceCapability

Modified properties:

-public abstract bool SupportsCameraAssistance { get; }
+public virtual bool SupportsCameraAssistance { get; }
-public abstract bool SupportsDirectionMeasurement { get; }
+public virtual bool SupportsDirectionMeasurement { get; }
-public abstract bool SupportsPreciseDistanceMeasurement { get; }
+public virtual bool SupportsPreciseDistanceMeasurement { get; }

Added property:

public virtual bool SupportsExtendedDistanceMeasurement { get; }

Type Changed: NearbyInteraction.INISessionDelegate

Added methods:

public virtual void DidGenerateShareableConfigurationData (NISession session, Foundation.NSData shareableConfigurationData, NINearbyObject object);
public virtual void DidSessionInvalidate (NISession session, Foundation.NSError error);
public virtual void DidSessionRemoveNearbyObjects (NISession session, NINearbyObject[] nearbyObjects, NINearbyObjectRemovalReason reason);
public virtual void DidSessionStartRunning (NISession session);
public virtual void DidSessionUpdateNearbyObjects (NISession session, NINearbyObject[] nearbyObjects);
public virtual void DidUpdateAlgorithmConvergence (NISession session, NIAlgorithmConvergence convergence, NINearbyObject object);
public virtual void SessionSuspensionEnded (NISession session);
public virtual void SessionWasSuspended (NISession session);

Namespace Network

Type Changed: Network.NWPrivacyContext

Added methods:

public void AddProxy (NWProxyConfig proxyConfig);
public void ClearProxies ();

New Type: Network.NWProxyConfig

public class NWProxyConfig : CoreFoundation.NativeObject {
	// properties
	public bool FailoverAllowed { get; set; }
	// methods
	public void AddExcludedDomain (string domain);
	public void AddMatchDomain (string domain);
	public void ClearExcludedDomains ();
	public void ClearMatchDomains ();
	public static NWProxyConfig CreateHttpConnect (NWEndpoint proxyEndpoint, NWProtocolTlsOptions options);
	public static NWProxyConfig CreateObliviousHttp (NWRelayHop hop, string relaysResourcePath, byte[] gatewayKeyConfig);
	public static NWProxyConfig CreateRelay (NWRelayHop firstHop, NWRelayHop secondHop);
	public static NWProxyConfig CreateSocksV5 (NWEndpoint endpoint);
	public void EnumerateExcludedDomains (System.Action<string> handler);
	public void EnumerateMatchDomains (System.Action<string> handler);
	public void SetUsernameAndPassword (string username, string password);
}

New Type: Network.NWRelayHop

public class NWRelayHop : CoreFoundation.NativeObject {
	// methods
	public void AddAdditionalHttpHeaderField (string fieldName, string fieldValue);
	public static NWRelayHop Create (NWEndpoint http3RelayEndpoint, NWEndpoint http2RelayEndpoint, NWProtocolOptions relayTlsOptions);
}

Namespace NetworkExtension

Type Changed: NetworkExtension.INEAppPushDelegate

Modified methods:

-public abstract void DidReceiveIncomingCall (NEAppPushManager manager, Foundation.NSDictionary userInfo)
+public virtual void DidReceiveIncomingCall (NEAppPushManager manager, Foundation.NSDictionary userInfo)

Type Changed: NetworkExtension.INWTcpConnectionAuthenticationDelegate

Added methods:

public virtual void EvaluateTrust (NWTcpConnection connection, Foundation.NSArray peerCertificateChain, System.Action<Security.SecTrust> completion);
public virtual System.Threading.Tasks.Task<Security.SecTrust> EvaluateTrustAsync (NWTcpConnection connection, Foundation.NSArray peerCertificateChain);
public virtual void ProvideIdentity (NWTcpConnection connection, System.Action<Security.SecIdentity,Foundation.NSArray> completion);
public virtual bool ShouldEvaluateTrust (NWTcpConnection connection);
public virtual bool ShouldProvideIdentity (NWTcpConnection connection);

Type Changed: NetworkExtension.NEVpnProtocol

Added property:

public virtual bool ExcludeDeviceCommunication { get; set; }

Namespace NotificationCenter

Type Changed: NotificationCenter.INCWidgetProviding

Added methods:

public virtual UIKit.UIEdgeInsets GetWidgetMarginInsets (UIKit.UIEdgeInsets defaultMarginInsets);
public virtual void WidgetActiveDisplayModeDidChange (NCWidgetDisplayMode activeDisplayMode, CoreGraphics.CGSize maxSize);
public virtual void WidgetPerformUpdate (System.Action<NCUpdateResult> completionHandler);

Namespace OSLog

Type Changed: OSLog.IOSLogEntryFromProcess

Modified properties:

-public abstract ulong ActivityIdentifier { get; }
+public virtual ulong ActivityIdentifier { get; }
-public abstract string Process { get; }
+public virtual string Process { get; }
-public abstract int ProcessIdentifier { get; }
+public virtual int ProcessIdentifier { get; }
-public abstract string Sender { get; }
+public virtual string Sender { get; }
-public abstract ulong ThreadIdentifier { get; }
+public virtual ulong ThreadIdentifier { get; }

Type Changed: OSLog.IOSLogEntryWithPayload

Modified properties:

-public abstract string Category { get; }
+public virtual string Category { get; }
-public abstract OSLogMessageComponent[] Components { get; }
+public virtual OSLogMessageComponent[] Components { get; }
-public abstract string FormatString { get; }
+public virtual string FormatString { get; }
-public abstract string Subsystem { get; }
+public virtual string Subsystem { get; }

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "17.2";
+public const string SdkVersion = "17.5";
-public const string Version = "17.2.0";
+public const string Version = "17.5.0";

Added fields:

public static const string CryptoTokenKitLibrary = "/System/Library/Frameworks/CryptoTokenKit.framework/CryptoTokenKit";
public static const string DeviceDiscoveryExtensionLibrary = "/System/Library/Frameworks/DeviceDiscoveryExtension.framework/DeviceDiscoveryExtension";
public static const string SafetyKitLibrary = "/System/Library/Frameworks/SafetyKit.framework/SafetyKit";

Type Changed: ObjCRuntime.DisposableObject

Added method:

protected void ClearHandle ();

Type Changed: ObjCRuntime.Dlfcn

Added method:

public static void SetObject (IntPtr handle, string symbol, Foundation.NSObject value);

Type Changed: ObjCRuntime.LinkWithAttribute

Added property:

public bool LinkWithSwiftSystemLibraries { get; set; }

New Type: ObjCRuntime.BlockCallbackAttribute

public class BlockCallbackAttribute : System.Attribute {
	// constructors
	public BlockCallbackAttribute ();
}

New Type: ObjCRuntime.CCallbackAttribute

public class CCallbackAttribute : System.Attribute {
	// constructors
	public CCallbackAttribute ();
}

Namespace OpenGLES

Type Changed: OpenGLES.IEAGLDrawable

Modified properties:

-public abstract Foundation.NSDictionary DrawableProperties { get; set; }
+public virtual Foundation.NSDictionary DrawableProperties { get; set; }

Namespace PassKit

Type Changed: PassKit.IPKAddPassesViewControllerDelegate

Added method:

public virtual void Finished (PKAddPassesViewController controller);

Type Changed: PassKit.IPKAddPaymentPassViewControllerDelegate

Modified methods:

-public abstract void DidFinishAddingPaymentPass (PKAddPaymentPassViewController controller, PKPaymentPass pass, Foundation.NSError error)
+public virtual void DidFinishAddingPaymentPass (PKAddPaymentPassViewController controller, PKPaymentPass pass, Foundation.NSError error)
-public abstract void GenerateRequestWithCertificateChain (PKAddPaymentPassViewController controller, Foundation.NSData[] certificates, Foundation.NSData nonce, Foundation.NSData nonceSignature, System.Action%LESSERTHANREPLACEMENT%PKAddPaymentPassRequest%GREATERTHANREPLACEMENT% handler)
+public virtual void GenerateRequestWithCertificateChain (PKAddPaymentPassViewController controller, Foundation.NSData[] certificates, Foundation.NSData nonce, Foundation.NSData nonceSignature, System.Action%LESSERTHANREPLACEMENT%PKAddPaymentPassRequest%GREATERTHANREPLACEMENT% handler)

Type Changed: PassKit.IPKAddSecureElementPassViewControllerDelegate

Modified methods:

-public abstract void DidFinishAddingSecureElementPass (PKAddSecureElementPassViewController controller, PKSecureElementPass pass, Foundation.NSError error)
+public virtual void DidFinishAddingSecureElementPass (PKAddSecureElementPassViewController controller, PKSecureElementPass pass, Foundation.NSError error)
-public abstract void DidFinishAddingSecureElementPasses (PKAddSecureElementPassViewController controller, PKSecureElementPass[] passes, Foundation.NSError error)
+public virtual void DidFinishAddingSecureElementPasses (PKAddSecureElementPassViewController controller, PKSecureElementPass[] passes, Foundation.NSError error)

Type Changed: PassKit.IPKIdentityDocumentDescriptor

Modified properties:

-public abstract PKIdentityElement[] Elements { get; }
+public virtual PKIdentityElement[] Elements { get; }

Modified methods:

-public abstract void AddElements (PKIdentityElement[] elements, PKIdentityIntentToStore intentToStore)
+public virtual void AddElements (PKIdentityElement[] elements, PKIdentityIntentToStore intentToStore)
-public abstract PKIdentityIntentToStore GetIntentToStore (PKIdentityElement element)
+public virtual PKIdentityIntentToStore GetIntentToStore (PKIdentityElement element)

Type Changed: PassKit.IPKIssuerProvisioningExtensionAuthorizationProviding

Modified properties:

-public abstract System.Action%LESSERTHANREPLACEMENT%PKIssuerProvisioningExtensionAuthorizationResult%GREATERTHANREPLACEMENT% CompletionHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%PKIssuerProvisioningExtensionAuthorizationResult%GREATERTHANREPLACEMENT% CompletionHandler { get; set; }

Type Changed: PassKit.IPKPayLaterViewDelegate

Modified methods:

-public abstract void PayLaterViewDidUpdateHeight (PKPayLaterView view)
+public virtual void PayLaterViewDidUpdateHeight (PKPayLaterView view)

Type Changed: PassKit.IPKPaymentAuthorizationControllerDelegate

Modified methods:

-public abstract void DidFinish (PKPaymentAuthorizationController controller)
+public virtual void DidFinish (PKPaymentAuthorizationController controller)

Added methods:

public virtual void DidAuthorizePayment (PKPaymentAuthorizationController controller, PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
public virtual void DidAuthorizePayment (PKPaymentAuthorizationController controller, PKPayment payment, System.Action<PKPaymentAuthorizationStatus> completion);
public virtual void DidChangeCouponCode (PKPaymentAuthorizationController controller, string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);
public virtual void DidRequestMerchantSessionUpdate (PKPaymentAuthorizationController controller, System.Action<PKPaymentRequestMerchantSessionUpdate> handler);
public virtual void DidSelectPaymentMethod (PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
public virtual void DidSelectPaymentMethod (PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentSummaryItem[]> completion);
public virtual void DidSelectShippingContact (PKPaymentAuthorizationController controller, PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
public virtual void DidSelectShippingContact (PKPaymentAuthorizationController controller, PKContact contact, System.Action<PKPaymentAuthorizationStatus,PassKit.PKShippingMethod[],PassKit.PKPaymentSummaryItem[]> completion);
public virtual void DidSelectShippingMethod (PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
public virtual void DidSelectShippingMethod (PKPaymentAuthorizationController controller, PKShippingMethod shippingMethod, System.Action<PKPaymentAuthorizationStatus,PassKit.PKPaymentSummaryItem[]> completion);
public virtual UIKit.UIWindow GetPresentationWindow (PKPaymentAuthorizationController controller);
public virtual void WillAuthorizePayment (PKPaymentAuthorizationController controller);

Type Changed: PassKit.IPKPaymentAuthorizationViewControllerDelegate

Modified methods:

-public abstract void PaymentAuthorizationViewControllerDidFinish (PKPaymentAuthorizationViewController controller)
+public virtual void PaymentAuthorizationViewControllerDidFinish (PKPaymentAuthorizationViewController controller)

Added methods:

public virtual void DidAuthorizePayment (PKPaymentAuthorizationViewController controller, PKPayment payment, System.Action<PKPaymentAuthorizationStatus> completion);
public virtual void DidAuthorizePayment2 (PKPaymentAuthorizationViewController controller, PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
public virtual void DidChangeCouponCode (PKPaymentAuthorizationViewController controller, string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);
public virtual void DidRequestMerchantSessionUpdate (PKPaymentAuthorizationViewController controller, System.Action<PKPaymentRequestMerchantSessionUpdate> updateHandler);
public virtual void DidSelectPaymentMethod (PKPaymentAuthorizationViewController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentSummaryItem[]> completion);
public virtual void DidSelectPaymentMethod2 (PKPaymentAuthorizationViewController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
public virtual void DidSelectShippingAddress (PKPaymentAuthorizationViewController controller, AddressBook.ABRecord address, PKPaymentShippingAddressSelected completion);
public virtual void DidSelectShippingContact (PKPaymentAuthorizationViewController controller, PKContact contact, PKPaymentShippingAddressSelected completion);
public virtual void DidSelectShippingContact2 (PKPaymentAuthorizationViewController controller, PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
public virtual void DidSelectShippingMethod (PKPaymentAuthorizationViewController controller, PKShippingMethod shippingMethod, PKPaymentShippingMethodSelected completion);
public virtual void DidSelectShippingMethod2 (PKPaymentAuthorizationViewController controller, PKShippingMethod shippingMethod, System.Action<PKPaymentRequestShippingMethodUpdate> completion);
public virtual void WillAuthorizePayment (PKPaymentAuthorizationViewController controller);

Type Changed: PassKit.IPKPaymentInformationRequestHandling

Modified methods:

-public abstract void HandleConfigurationRequest (PKBarcodeEventConfigurationRequest configurationRequest, System.Action completion)
+public virtual void HandleConfigurationRequest (PKBarcodeEventConfigurationRequest configurationRequest, System.Action completion)
-public abstract void HandleInformationRequest (PKBarcodeEventMetadataRequest infoRequest, PKInformationRequestCompletionBlock completion)
+public virtual void HandleInformationRequest (PKBarcodeEventMetadataRequest infoRequest, PKInformationRequestCompletionBlock completion)
-public abstract void HandleSignatureRequest (PKBarcodeEventSignatureRequest signatureRequest, PKSignatureRequestCompletionBlock completion)
+public virtual void HandleSignatureRequest (PKBarcodeEventSignatureRequest signatureRequest, PKSignatureRequestCompletionBlock completion)

Type Changed: PassKit.IPKShareSecureElementPassViewControllerDelegate

Modified methods:

-public abstract void DidFinish (PKShareSecureElementPassViewController controller, PKShareSecureElementPassResult result)
+public virtual void DidFinish (PKShareSecureElementPassViewController controller, PKShareSecureElementPassResult result)

Added method:

public virtual void DidCreateShareUrl (PKShareSecureElementPassViewController controller, Foundation.NSUrl universalShareUrl, string activationCode);

Type Changed: PassKit.IPKVehicleConnectionDelegate

Modified methods:

-public abstract void SessionDidChangeConnectionState (PKVehicleConnectionSessionConnectionState newState)
+public virtual void SessionDidChangeConnectionState (PKVehicleConnectionSessionConnectionState newState)
-public abstract void SessionDidReceiveData (Foundation.NSData data)
+public virtual void SessionDidReceiveData (Foundation.NSData data)

Type Changed: PassKit.PKPaymentNetwork

Added properties:

public static Foundation.NSString BankAxept { get; }
public static Foundation.NSString Meeza { get; }
public static Foundation.NSString Napas { get; }

Namespace PdfKit

Type Changed: PdfKit.IPdfDocumentDelegate

Added methods:

public virtual void DidBeginDocumentFind (Foundation.NSNotification notification);
public virtual void DidMatchString (PdfSelection sender);
public virtual void DidUnlock (Foundation.NSNotification notification);
public virtual void FindFinished (Foundation.NSNotification notification);
public virtual ObjCRuntime.Class GetClassForAnnotationType (string annotationType);
public virtual ObjCRuntime.Class GetClassForPage ();
public virtual void MatchFound (Foundation.NSNotification notification);
public virtual void PageFindFinished (Foundation.NSNotification notification);
public virtual void PageFindStarted (Foundation.NSNotification notification);

Type Changed: PdfKit.IPdfPageOverlayViewProvider

Modified methods:

-public abstract UIKit.UIView GetOverlayView (PdfView view, PdfPage page)
+public virtual UIKit.UIView GetOverlayView (PdfView view, PdfPage page)

Added methods:

public virtual void WillDisplayOverlayView (PdfView pdfView, UIKit.UIView overlayView, PdfPage page);
public virtual void WillEndDisplayingOverlayView (PdfView pdfView, UIKit.UIView overlayView, PdfPage page);

Type Changed: PdfKit.IPdfViewDelegate

Added property:

public virtual UIKit.UIViewController ParentViewController { get; }

Added methods:

public virtual void OpenPdf (PdfView sender, PdfActionRemoteGoTo action);
public virtual void PerformFind (PdfView sender);
public virtual void PerformGoToPage (PdfView sender);
public virtual void WillClickOnLink (PdfView sender, Foundation.NSUrl url);

Namespace PencilKit

Type Changed: PencilKit.IPKCanvasViewDelegate

Added methods:

public virtual void DidBeginUsingTool (PKCanvasView canvasView);
public virtual void DidFinishRendering (PKCanvasView canvasView);
public virtual void DrawingDidChange (PKCanvasView canvasView);
public virtual void EndUsingTool (PKCanvasView canvasView);

Type Changed: PencilKit.IPKToolPickerObserver

Added methods:

public virtual void FramesObscuredDidChange (PKToolPicker toolPicker);
public virtual void IsRulerActiveDidChange (PKToolPicker toolPicker);
public virtual void SelectedToolDidChange (PKToolPicker toolPicker);
public virtual void VisibilityDidChange (PKToolPicker toolPicker);

Type Changed: PencilKit.PKContentVersion

Added value:

Version3 = 3,

Namespace Photos

Type Changed: Photos.IPHLivePhotoFrame

Modified properties:

-public abstract CoreImage.CIImage Image { get; }
+public virtual CoreImage.CIImage Image { get; }
-public abstract System.Runtime.InteropServices.NFloat RenderScale { get; }
+public virtual System.Runtime.InteropServices.NFloat RenderScale { get; }
-public abstract CoreMedia.CMTime Time { get; }
+public virtual CoreMedia.CMTime Time { get; }
-public abstract PHLivePhotoFrameType Type { get; }
+public virtual PHLivePhotoFrameType Type { get; }

Type Changed: Photos.IPHPhotoLibraryAvailabilityObserver

Modified methods:

-public abstract void PhotoLibraryDidBecomeUnavailable (PHPhotoLibrary photoLibrary)
+public virtual void PhotoLibraryDidBecomeUnavailable (PHPhotoLibrary photoLibrary)

Type Changed: Photos.IPHPhotoLibraryChangeObserver

Modified methods:

-public abstract void PhotoLibraryDidChange (PHChange changeInstance)
+public virtual void PhotoLibraryDidChange (PHChange changeInstance)

Namespace PhotosUI

Type Changed: PhotosUI.IPHContentEditingController

Modified properties:

-public abstract bool ShouldShowCancelConfirmation { get; }
+public virtual bool ShouldShowCancelConfirmation { get; }

Modified methods:

-public abstract bool CanHandleAdjustmentData (Photos.PHAdjustmentData adjustmentData)
+public virtual bool CanHandleAdjustmentData (Photos.PHAdjustmentData adjustmentData)
-public abstract void CancelContentEditing ()
+public virtual void CancelContentEditing ()
-public abstract void FinishContentEditing (System.Action%LESSERTHANREPLACEMENT%Photos.PHContentEditingOutput%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void FinishContentEditing (System.Action%LESSERTHANREPLACEMENT%Photos.PHContentEditingOutput%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void StartContentEditing (Photos.PHContentEditingInput contentEditingInput, UIKit.UIImage placeholderImage)
+public virtual void StartContentEditing (Photos.PHContentEditingInput contentEditingInput, UIKit.UIImage placeholderImage)

Type Changed: PhotosUI.IPHLivePhotoViewDelegate

Added methods:

public virtual bool CanBeginPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);
public virtual void DidEndPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);
public virtual double GetExtraMinimumTouchDuration (PHLivePhotoView livePhotoView, UIKit.UITouch touch, PHLivePhotoViewPlaybackStyle playbackStyle);
public virtual void WillBeginPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);

Type Changed: PhotosUI.IPHPickerViewControllerDelegate

Modified methods:

-public abstract void DidFinishPicking (PHPickerViewController picker, PHPickerResult[] results)
+public virtual void DidFinishPicking (PHPickerViewController picker, PHPickerResult[] results)

Namespace PushKit

Type Changed: PushKit.IPKPushRegistryDelegate

Modified methods:

-public abstract void DidUpdatePushCredentials (PKPushRegistry registry, PKPushCredentials credentials, string type)
+public virtual void DidUpdatePushCredentials (PKPushRegistry registry, PKPushCredentials credentials, string type)

Added methods:

public virtual void DidInvalidatePushToken (PKPushRegistry registry, string type);
public virtual void DidReceiveIncomingPush (PKPushRegistry registry, PKPushPayload payload, string type);
public virtual void DidReceiveIncomingPush (PKPushRegistry registry, PKPushPayload payload, string type, System.Action completion);

Namespace PushToTalk

Type Changed: PushToTalk.IPTChannelManagerDelegate

Modified methods:

-public abstract void DidActivateAudioSession (PTChannelManager channelManager, AVFoundation.AVAudioSession audioSession)
+public virtual void DidActivateAudioSession (PTChannelManager channelManager, AVFoundation.AVAudioSession audioSession)
-public abstract void DidBeginTransmitting (PTChannelManager channelManager, Foundation.NSUuid channelUuid, PTChannelTransmitRequestSource source)
+public virtual void DidBeginTransmitting (PTChannelManager channelManager, Foundation.NSUuid channelUuid, PTChannelTransmitRequestSource source)
-public abstract void DidDeactivateAudioSession (PTChannelManager channelManager, AVFoundation.AVAudioSession audioSession)
+public virtual void DidDeactivateAudioSession (PTChannelManager channelManager, AVFoundation.AVAudioSession audioSession)
-public abstract void DidEndTransmitting (PTChannelManager channelManager, Foundation.NSUuid channelUuid, PTChannelTransmitRequestSource source)
+public virtual void DidEndTransmitting (PTChannelManager channelManager, Foundation.NSUuid channelUuid, PTChannelTransmitRequestSource source)
-public abstract void DidJoinChannel (PTChannelManager channelManager, Foundation.NSUuid channelUuid, PTChannelJoinReason reason)
+public virtual void DidJoinChannel (PTChannelManager channelManager, Foundation.NSUuid channelUuid, PTChannelJoinReason reason)
-public abstract void DidLeaveChannel (PTChannelManager channelManager, Foundation.NSUuid channelUuid, PTChannelLeaveReason reason)
+public virtual void DidLeaveChannel (PTChannelManager channelManager, Foundation.NSUuid channelUuid, PTChannelLeaveReason reason)
-public abstract PTPushResult IncomingPushResult (PTChannelManager channelManager, Foundation.NSUuid channelUuid, Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% pushPayload)
+public virtual PTPushResult IncomingPushResult (PTChannelManager channelManager, Foundation.NSUuid channelUuid, Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% pushPayload)
-public abstract void ReceivedEphemeralPushToken (PTChannelManager channelManager, Foundation.NSData pushToken)
+public virtual void ReceivedEphemeralPushToken (PTChannelManager channelManager, Foundation.NSData pushToken)

Added methods:

public virtual void FailedToBeginTransmittingInChannel (PTChannelManager channelManager, Foundation.NSUuid channelUuid, Foundation.NSError error);
public virtual void FailedToJoinChannel (PTChannelManager channelManager, Foundation.NSUuid channelUuid, Foundation.NSError error);
public virtual void FailedToLeaveChannel (PTChannelManager channelManager, Foundation.NSUuid channelUuid, Foundation.NSError error);
public virtual void FailedToStopTransmittingInChannel (PTChannelManager channelManager, Foundation.NSUuid channelUuid, Foundation.NSError error);
public virtual void IncomingServiceUpdatePush (PTChannelManager channelManager, Foundation.NSUuid channelUuid, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> pushPayload, bool isHighPriority, IntPtr remainingHighPriorityBudget, System.Action completion);

Type Changed: PushToTalk.IPTChannelRestorationDelegate

Modified methods:

-public abstract PTChannelDescriptor Create (Foundation.NSUuid channelUuid)
+public virtual PTChannelDescriptor Create (Foundation.NSUuid channelUuid)

Namespace QuickLook

Type Changed: QuickLook.IQLPreviewControllerDataSource

Modified methods:

-public abstract IQLPreviewItem GetPreviewItem (QLPreviewController controller, IntPtr index)
+public virtual IQLPreviewItem GetPreviewItem (QLPreviewController controller, IntPtr index)
-public abstract IntPtr PreviewItemCount (QLPreviewController controller)
+public virtual IntPtr PreviewItemCount (QLPreviewController controller)

Type Changed: QuickLook.IQLPreviewControllerDelegate

Added methods:

public virtual void DidDismiss (QLPreviewController controller);
public virtual void DidSaveEditedCopy (QLPreviewController controller, IQLPreviewItem previewItem, Foundation.NSUrl modifiedContentsUrl);
public virtual void DidUpdateContents (QLPreviewController controller, IQLPreviewItem previewItem);
public virtual CoreGraphics.CGRect FrameForPreviewItem (QLPreviewController controller, IQLPreviewItem item, ref UIKit.UIView view);
public virtual QLPreviewItemEditingMode GetEditingMode (QLPreviewController controller, IQLPreviewItem previewItem);
public virtual bool ShouldOpenUrl (QLPreviewController controller, Foundation.NSUrl url, IQLPreviewItem item);
public virtual UIKit.UIImage TransitionImageForPreviewItem (QLPreviewController controller, IQLPreviewItem item, CoreGraphics.CGRect contentRect);
public virtual UIKit.UIView TransitionViewForPreviewItem (QLPreviewController controller, IQLPreviewItem item);
public virtual void WillDismiss (QLPreviewController controller);

Type Changed: QuickLook.IQLPreviewItem

Modified properties:

-public abstract Foundation.NSUrl PreviewItemUrl { get; }
+public virtual Foundation.NSUrl PreviewItemUrl { get; }

Added property:

public virtual string PreviewItemTitle { get; }

Type Changed: QuickLook.IQLPreviewingController

Added methods:

public virtual void PreparePreviewOfFile (Foundation.NSUrl url, System.Action<Foundation.NSError> handler);
public virtual void PreparePreviewOfSearchableItem (string identifier, string queryString, System.Action<Foundation.NSError> handler);
public virtual void ProvidePreview (QLFilePreviewRequest request, System.Action<QLPreviewReply,Foundation.NSError> handler);

Namespace ReplayKit

Type Changed: ReplayKit.IRPBroadcastActivityViewControllerDelegate

Modified methods:

-public abstract void DidFinish (RPBroadcastActivityViewController broadcastActivityViewController, RPBroadcastController broadcastController, Foundation.NSError error)
+public virtual void DidFinish (RPBroadcastActivityViewController broadcastActivityViewController, RPBroadcastController broadcastController, Foundation.NSError error)

Type Changed: ReplayKit.IRPBroadcastControllerDelegate

Added methods:

public virtual void DidFinish (RPBroadcastController broadcastController, Foundation.NSError error);
public virtual void DidUpdateBroadcastUrl (RPBroadcastController broadcastController, Foundation.NSUrl broadcastUrl);
public virtual void DidUpdateServiceInfo (RPBroadcastController broadcastController, Foundation.NSDictionary<Foundation.NSString,Foundation.INSCoding> serviceInfo);

Type Changed: ReplayKit.IRPPreviewViewControllerDelegate

Added methods:

public virtual void DidFinish (RPPreviewViewController previewController);
public virtual void DidFinish (RPPreviewViewController previewController, Foundation.NSSet<Foundation.NSString> activityTypes);

Type Changed: ReplayKit.IRPScreenRecorderDelegate

Added methods:

public virtual void DidChangeAvailability (RPScreenRecorder screenRecorder);
public virtual void DidStopRecording (RPScreenRecorder screenRecorder, Foundation.NSError error, RPPreviewViewController previewViewController);
public virtual void DidStopRecording (RPScreenRecorder screenRecorder, RPPreviewViewController previewViewController, Foundation.NSError error);

Namespace SafariServices

Type Changed: SafariServices.ISFSafariViewControllerDelegate

Added methods:

public virtual void DidCompleteInitialLoad (SFSafariViewController controller, bool didLoadSuccessfully);
public virtual void DidFinish (SFSafariViewController controller);
public virtual UIKit.UIActivity[] GetActivityItems (SFSafariViewController controller, Foundation.NSUrl url, string title);
public virtual string[] GetExcludedActivityTypes (SFSafariViewController controller, Foundation.NSUrl url, string title);
public virtual void InitialLoadDidRedirectToUrl (SFSafariViewController controller, Foundation.NSUrl url);
public virtual void WillOpenInBrowser (SFSafariViewController controller);

New Type: SafariServices.ISFAddToHomeScreenActivityItem

public interface ISFAddToHomeScreenActivityItem : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSItemProvider IconItemProvider { get; }
	public virtual string Title { get; }
	public virtual Foundation.NSUrl Url { get; }
}

Namespace SceneKit

Type Changed: SceneKit.ISCNActionable

Modified properties:

-public abstract string[] ActionKeys { get; }
+public virtual string[] ActionKeys { get; }

Modified methods:

-public abstract SCNAction GetAction (string key)
+public virtual SCNAction GetAction (string key)
-public abstract bool HasActions ()
+public virtual bool HasActions ()
-public abstract void RemoveAction (string key)
+public virtual void RemoveAction (string key)
-public abstract void RemoveAllActions ()
+public virtual void RemoveAllActions ()
-public abstract void RunAction (SCNAction action)
+public virtual void RunAction (SCNAction action)
-public abstract void RunAction (SCNAction action, System.Action block)
+public virtual void RunAction (SCNAction action, System.Action block)
-public abstract void RunAction (SCNAction action, string key)
+public virtual void RunAction (SCNAction action, string key)
-public abstract void RunAction (SCNAction action, string key, System.Action block)
+public virtual void RunAction (SCNAction action, string key, System.Action block)

Type Changed: SceneKit.ISCNAnimatable

Modified methods:

-public abstract void AddAnimation (ISCNAnimationProtocol scnAnimation, string key)
+public virtual void AddAnimation (ISCNAnimationProtocol scnAnimation, string key)
-public abstract void AddAnimation (SCNAnimationPlayer player, Foundation.NSString key)
+public virtual void AddAnimation (SCNAnimationPlayer player, Foundation.NSString key)
-public abstract CoreAnimation.CAAnimation GetAnimation (Foundation.NSString key)
+public virtual CoreAnimation.CAAnimation GetAnimation (Foundation.NSString key)
-public abstract Foundation.NSString[] GetAnimationKeys ()
+public virtual Foundation.NSString[] GetAnimationKeys ()
-public abstract SCNAnimationPlayer GetAnimationPlayer (Foundation.NSString key)
+public virtual SCNAnimationPlayer GetAnimationPlayer (Foundation.NSString key)
-public abstract bool IsAnimationPaused (Foundation.NSString key)
+public virtual bool IsAnimationPaused (Foundation.NSString key)
-public abstract void PauseAnimation (Foundation.NSString key)
+public virtual void PauseAnimation (Foundation.NSString key)
-public abstract void RemoveAllAnimations ()
+public virtual void RemoveAllAnimations ()
-public abstract void RemoveAllAnimationsWithBlendOutDuration (System.Runtime.InteropServices.NFloat duration)
+public virtual void RemoveAllAnimationsWithBlendOutDuration (System.Runtime.InteropServices.NFloat duration)
-public abstract void RemoveAnimation (Foundation.NSString key)
+public virtual void RemoveAnimation (Foundation.NSString key)
-public abstract void RemoveAnimation (Foundation.NSString key, System.Runtime.InteropServices.NFloat duration)
+public virtual void RemoveAnimation (Foundation.NSString key, System.Runtime.InteropServices.NFloat duration)
-public abstract void RemoveAnimationUsingBlendOutDuration (Foundation.NSString key, System.Runtime.InteropServices.NFloat blendOutDuration)
+public virtual void RemoveAnimationUsingBlendOutDuration (Foundation.NSString key, System.Runtime.InteropServices.NFloat blendOutDuration)
-public abstract void ResumeAnimation (Foundation.NSString key)
+public virtual void ResumeAnimation (Foundation.NSString key)
-public abstract void SetSpeed (System.Runtime.InteropServices.NFloat speed, Foundation.NSString key)
+public virtual void SetSpeed (System.Runtime.InteropServices.NFloat speed, Foundation.NSString key)

Type Changed: SceneKit.ISCNAvoidOccluderConstraintDelegate

Added methods:

public virtual void DidAvoidOccluder (SCNAvoidOccluderConstraint constraint, SCNNode occluder, SCNNode node);
public virtual bool ShouldAvoidOccluder (SCNAvoidOccluderConstraint constraint, SCNNode occluder, SCNNode node);

Type Changed: SceneKit.ISCNBoundingVolume

Modified methods:

-public abstract bool GetBoundingBox (ref SCNVector3 min, ref SCNVector3 max)
+public virtual bool GetBoundingBox (ref SCNVector3 min, ref SCNVector3 max)
-public abstract bool GetBoundingSphere (ref SCNVector3 center, ref System.Runtime.InteropServices.NFloat radius)
+public virtual bool GetBoundingSphere (ref SCNVector3 center, ref System.Runtime.InteropServices.NFloat radius)
-public abstract void SetBoundingBox (ref SCNVector3 min, ref SCNVector3 max)
+public virtual void SetBoundingBox (ref SCNVector3 min, ref SCNVector3 max)

Type Changed: SceneKit.ISCNBufferStream

Modified methods:

-public abstract void Length (IntPtr bytes, UIntPtr length)
+public virtual void Length (IntPtr bytes, UIntPtr length)

Type Changed: SceneKit.ISCNCameraControlConfiguration

Modified properties:

-public abstract bool AllowsTranslation { get; set; }
+public virtual bool AllowsTranslation { get; set; }
-public abstract bool AutoSwitchToFreeCamera { get; set; }
+public virtual bool AutoSwitchToFreeCamera { get; set; }
-public abstract System.Runtime.InteropServices.NFloat FlyModeVelocity { get; set; }
+public virtual System.Runtime.InteropServices.NFloat FlyModeVelocity { get; set; }
-public abstract System.Runtime.InteropServices.NFloat PanSensitivity { get; set; }
+public virtual System.Runtime.InteropServices.NFloat PanSensitivity { get; set; }
-public abstract System.Runtime.InteropServices.NFloat RotationSensitivity { get; set; }
+public virtual System.Runtime.InteropServices.NFloat RotationSensitivity { get; set; }
-public abstract System.Runtime.InteropServices.NFloat TruckSensitivity { get; set; }
+public virtual System.Runtime.InteropServices.NFloat TruckSensitivity { get; set; }

Type Changed: SceneKit.ISCNCameraControllerDelegate

Added methods:

public virtual void CameraInertiaDidEnd (SCNCameraController cameraController);
public virtual void CameraInertiaWillStart (SCNCameraController cameraController);

Type Changed: SceneKit.ISCNNodeRendererDelegate

Added method:

public virtual void Render (SCNNode node, SCNRenderer renderer, Foundation.NSDictionary arguments);

Type Changed: SceneKit.ISCNPhysicsContactDelegate

Added methods:

public virtual void DidBeginContact (SCNPhysicsWorld world, SCNPhysicsContact contact);
public virtual void DidEndContact (SCNPhysicsWorld world, SCNPhysicsContact contact);
public virtual void DidUpdateContact (SCNPhysicsWorld world, SCNPhysicsContact contact);

Type Changed: SceneKit.ISCNProgramDelegate

Added method:

public virtual void HandleError (SCNProgram program, Foundation.NSError error);

Type Changed: SceneKit.ISCNSceneExportDelegate

Added method:

public virtual Foundation.NSUrl WriteImage (UIKit.UIImage image, Foundation.NSUrl documentUrl, Foundation.NSUrl originalImageUrl);

Type Changed: SceneKit.ISCNSceneRenderer

Modified properties:

-public abstract AVFoundation.AVAudioEngine AudioEngine { get; }
+public virtual AVFoundation.AVAudioEngine AudioEngine { get; }
-public abstract AVFoundation.AVAudioEnvironmentNode AudioEnvironmentNode { get; }
+public virtual AVFoundation.AVAudioEnvironmentNode AudioEnvironmentNode { get; }
-public abstract SCNNode AudioListener { get; set; }
+public virtual SCNNode AudioListener { get; set; }
-public abstract bool AutoenablesDefaultLighting { get; set; }
+public virtual bool AutoenablesDefaultLighting { get; set; }
-public abstract Metal.MTLPixelFormat ColorPixelFormat { get; }
+public virtual Metal.MTLPixelFormat ColorPixelFormat { get; }
-public abstract Metal.IMTLCommandQueue CommandQueue { get; }
+public virtual Metal.IMTLCommandQueue CommandQueue { get; }
-public abstract IntPtr Context { get; }
+public virtual IntPtr Context { get; }
-public abstract Metal.IMTLRenderCommandEncoder CurrentRenderCommandEncoder { get; }
+public virtual Metal.IMTLRenderCommandEncoder CurrentRenderCommandEncoder { get; }
-public abstract Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }
+public virtual Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }
-public abstract CoreGraphics.CGRect CurrentViewport { get; }
+public virtual CoreGraphics.CGRect CurrentViewport { get; }
-public abstract SCNDebugOptions DebugOptions { get; set; }
+public virtual SCNDebugOptions DebugOptions { get; set; }
-public abstract Metal.MTLPixelFormat DepthPixelFormat { get; }
+public virtual Metal.MTLPixelFormat DepthPixelFormat { get; }
-public abstract Metal.IMTLDevice Device { get; }
+public virtual Metal.IMTLDevice Device { get; }
-public abstract bool JitteringEnabled { get; set; }
+public virtual bool JitteringEnabled { get; set; }
-public abstract bool Loops { get; set; }
+public virtual bool Loops { get; set; }
-public abstract SpriteKit.SKScene OverlayScene { get; set; }
+public virtual SpriteKit.SKScene OverlayScene { get; set; }
-public abstract bool Playing { get; set; }
+public virtual bool Playing { get; set; }
-public abstract SCNNode PointOfView { get; set; }
+public virtual SCNNode PointOfView { get; set; }
-public abstract SCNRenderingApi RenderingApi { get; }
+public virtual SCNRenderingApi RenderingApi { get; }
-public abstract SCNScene Scene { get; set; }
+public virtual SCNScene Scene { get; set; }
-public abstract double SceneTimeInSeconds { get; set; }
+public virtual double SceneTimeInSeconds { get; set; }
-public abstract bool ShowsStatistics { get; set; }
+public virtual bool ShowsStatistics { get; set; }
-public abstract Metal.MTLPixelFormat StencilPixelFormat { get; }
+public virtual Metal.MTLPixelFormat StencilPixelFormat { get; }
-public abstract bool TemporalAntialiasingEnabled { get; set; }
+public virtual bool TemporalAntialiasingEnabled { get; set; }
-public abstract bool UsesReverseZ { get; set; }
+public virtual bool UsesReverseZ { get; set; }
-public abstract Foundation.NSObject WeakSceneRendererDelegate { get; set; }
+public virtual Foundation.NSObject WeakSceneRendererDelegate { get; set; }

Added property:

public virtual CoreGraphics.CGColorSpace WorkingColorSpace { get; }

Modified methods:

-public abstract SCNNode[] GetNodesInsideFrustum (SCNNode pointOfView)
+public virtual SCNNode[] GetNodesInsideFrustum (SCNNode pointOfView)
-public abstract SCNHitTestResult[] HitTest (CoreGraphics.CGPoint thePoint, Foundation.NSDictionary options)
+public virtual SCNHitTestResult[] HitTest (CoreGraphics.CGPoint thePoint, Foundation.NSDictionary options)
-public abstract bool IsNodeInsideFrustum (SCNNode node, SCNNode pointOfView)
+public virtual bool IsNodeInsideFrustum (SCNNode node, SCNNode pointOfView)
-public abstract bool Prepare (Foundation.NSObject obj, System.Func%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% abortHandler)
+public virtual bool Prepare (Foundation.NSObject obj, System.Func%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% abortHandler)
-public abstract void Prepare (Foundation.NSObject[] objects, System.Action%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Prepare (Foundation.NSObject[] objects, System.Action%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void PresentScene (SCNScene scene, SpriteKit.SKTransition transition, SCNNode pointOfView, System.Action completionHandler)
+public virtual void PresentScene (SCNScene scene, SpriteKit.SKTransition transition, SCNNode pointOfView, System.Action completionHandler)
-public abstract SCNVector3 ProjectPoint (SCNVector3 point)
+public virtual SCNVector3 ProjectPoint (SCNVector3 point)
-public abstract SCNVector3 UnprojectPoint (SCNVector3 point)
+public virtual SCNVector3 UnprojectPoint (SCNVector3 point)

Added methods:

public virtual System.Threading.Tasks.Task<bool> PrepareAsync (Foundation.NSObject[] objects);
public virtual System.Threading.Tasks.Task PresentSceneAsync (SCNScene scene, SpriteKit.SKTransition transition, SCNNode pointOfView);

Type Changed: SceneKit.ISCNSceneRendererDelegate

Added methods:

public virtual void DidApplyAnimations (ISCNSceneRenderer renderer, double timeInSeconds);
public virtual void DidApplyConstraints (ISCNSceneRenderer renderer, double atTime);
public virtual void DidRenderScene (ISCNSceneRenderer renderer, SCNScene scene, double timeInSeconds);
public virtual void DidSimulatePhysics (ISCNSceneRenderer renderer, double timeInSeconds);
public virtual void Update (ISCNSceneRenderer renderer, double timeInSeconds);
public virtual void WillRenderScene (ISCNSceneRenderer renderer, SCNScene scene, double timeInSeconds);

Type Changed: SceneKit.ISCNShadable

Added properties:

public virtual Foundation.NSNumber MinimumLanguageVersion { get; set; }
public virtual SCNProgram Program { get; set; }
public virtual Foundation.NSDictionary WeakShaderModifiers { get; set; }

Added methods:

public virtual void HandleBinding (string symbol, SCNBindingHandler handler);
public virtual void HandleUnbinding (string symbol, SCNBindingHandler handler);

Type Changed: SceneKit.ISCNTechniqueSupport

Modified properties:

-public abstract SCNTechnique Technique { get; set; }
+public virtual SCNTechnique Technique { get; set; }

Namespace SensorKit

Type Changed: SensorKit.ISRSensorReaderDelegate

Added methods:

public virtual void DidChangeAuthorizationStatus (SRSensorReader reader, SRAuthorizationStatus authorizationStatus);
public virtual void DidCompleteFetch (SRSensorReader reader, SRFetchRequest fetchRequest);
public virtual void DidFetchDevices (SRSensorReader reader, SRDevice[] devices);
public virtual bool DidFetchResult (SRSensorReader reader, SRFetchRequest fetchRequest, SensorKit.SRFetchResult<Foundation.NSObject> result);
public virtual void DidStopRecording (SRSensorReader reader);
public virtual void FetchDevicesFailed (SRSensorReader reader, Foundation.NSError error);
public virtual void FetchingRequestFailed (SRSensorReader reader, SRFetchRequest fetchRequest, Foundation.NSError error);
public virtual void StartRecordingFailed (SRSensorReader reader, Foundation.NSError error);
public virtual void StopRecordingFailed (SRSensorReader reader, Foundation.NSError error);
public virtual void WillStartRecording (SRSensorReader reader);

Type Changed: SensorKit.SRDevice

Added property:

public virtual string ProductType { get; }

Type Changed: SensorKit.SRSensor

Added values:

Electrocardiogram = 18,
FaceMetrics = 14,
HeartRate = 15,
Odometer = 16,
Photoplethysmogram = 19,
WristTemperature = 17,

New Type: SensorKit.SRAudioLevel

public class SRAudioLevel : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRAudioLevel (Foundation.NSCoder coder);
	protected SRAudioLevel (Foundation.NSObjectFlag t);
	protected SRAudioLevel (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual double Loudness { get; }
	public virtual CoreMedia.CMTimeRange TimeRange { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRElectrocardiogramData

public class SRElectrocardiogramData : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRElectrocardiogramData (Foundation.NSCoder coder);
	protected SRElectrocardiogramData (Foundation.NSObjectFlag t);
	protected SRElectrocardiogramData (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRElectrocardiogramDataFlags Flags { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitElectricPotentialDifference> Value { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRElectrocardiogramDataFlags

[Serializable]
[Flags]
public enum SRElectrocardiogramDataFlags {
	CrownTouched = 2,
	None = 0,
	SignalInvalid = 1,
}

New Type: SensorKit.SRElectrocardiogramLead

[Serializable]
public enum SRElectrocardiogramLead {
	LeftArmMinusRightArm = 2,
	RightArmMinusLeftArm = 1,
}

New Type: SensorKit.SRElectrocardiogramSample

public class SRElectrocardiogramSample : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRElectrocardiogramSample (Foundation.NSCoder coder);
	protected SRElectrocardiogramSample (Foundation.NSObjectFlag t);
	protected SRElectrocardiogramSample (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRElectrocardiogramData[] Data { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitFrequency> Frequency { get; }
	public virtual SRElectrocardiogramLead Lead { get; }
	public virtual SRElectrocardiogramSession Session { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRElectrocardiogramSession

public class SRElectrocardiogramSession : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRElectrocardiogramSession (Foundation.NSCoder coder);
	protected SRElectrocardiogramSession (Foundation.NSObjectFlag t);
	protected SRElectrocardiogramSession (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual SRElectrocardiogramSessionGuidance SessionGuidance { get; }
	public virtual SRElectrocardiogramSessionState State { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRElectrocardiogramSessionGuidance

[Serializable]
public enum SRElectrocardiogramSessionGuidance {
	Guided = 1,
	Unguided = 2,
}

New Type: SensorKit.SRElectrocardiogramSessionState

[Serializable]
public enum SRElectrocardiogramSessionState {
	Active = 2,
	Begin = 1,
	End = 3,
}

New Type: SensorKit.SRFaceMetrics

public class SRFaceMetrics : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRFaceMetrics (Foundation.NSCoder coder);
	protected SRFaceMetrics (Foundation.NSObjectFlag t);
	protected SRFaceMetrics (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRFaceMetricsContext Context { get; }
	public virtual ARKit.ARFaceAnchor FaceAnchor { get; }
	public virtual SRFaceMetricsExpression[] PartialFaceExpressions { get; }
	public virtual string SessionIdentifier { get; }
	public virtual string Version { get; }
	public virtual SRFaceMetricsExpression[] WholeFaceExpressions { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRFaceMetricsContext

[Serializable]
[Flags]
public enum SRFaceMetricsContext {
	DeviceUnlock = 1,
	MessagingAppUsage = 2,
}

New Type: SensorKit.SRFaceMetricsExpression

public class SRFaceMetricsExpression : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRFaceMetricsExpression (Foundation.NSCoder coder);
	protected SRFaceMetricsExpression (Foundation.NSObjectFlag t);
	protected SRFaceMetricsExpression (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual double Value { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRPhotoplethysmogramAccelerometerSample

public class SRPhotoplethysmogramAccelerometerSample : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRPhotoplethysmogramAccelerometerSample (Foundation.NSCoder coder);
	protected SRPhotoplethysmogramAccelerometerSample (Foundation.NSObjectFlag t);
	protected SRPhotoplethysmogramAccelerometerSample (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual long NanosecondsSinceStart { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitFrequency> SamplingFrequency { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitAcceleration> X { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitAcceleration> Y { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitAcceleration> Z { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRPhotoplethysmogramOpticalSample

public class SRPhotoplethysmogramOpticalSample : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRPhotoplethysmogramOpticalSample (Foundation.NSCoder coder);
	protected SRPhotoplethysmogramOpticalSample (Foundation.NSObjectFlag t);
	protected SRPhotoplethysmogramOpticalSample (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual Foundation.NSIndexSet ActivePhotodiodeIndexes { get; }
	public virtual double? BackgroundNoise { get; }
	public virtual double? BackgroundNoiseOffset { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSString[] Conditions { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitLength> EffectiveWavelength { get; }
	public virtual IntPtr Emitter { get; }
	public virtual long NanosecondsSinceStart { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitLength> NominalWavelength { get; }
	public virtual double? NormalizedReflectance { get; }
	public virtual double? PinkNoise { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitFrequency> SamplingFrequency { get; }
	public virtual IntPtr SignalIdentifier { get; }
	public virtual double? WhiteNoise { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRPhotoplethysmogramOpticalSampleCondition

[Serializable]
public enum SRPhotoplethysmogramOpticalSampleCondition {
	SignalSaturation = 0,
	UnreliableNoise = 1,
}

New Type: SensorKit.SRPhotoplethysmogramOpticalSampleConditionExtensions

public static class SRPhotoplethysmogramOpticalSampleConditionExtensions {
	// methods
	public static Foundation.NSString GetConstant (this SRPhotoplethysmogramOpticalSampleCondition self);
	public static SRPhotoplethysmogramOpticalSampleCondition GetValue (Foundation.NSString constant);
}

New Type: SensorKit.SRPhotoplethysmogramSample

public class SRPhotoplethysmogramSample : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRPhotoplethysmogramSample (Foundation.NSCoder coder);
	protected SRPhotoplethysmogramSample (Foundation.NSObjectFlag t);
	protected SRPhotoplethysmogramSample (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual SRPhotoplethysmogramAccelerometerSample[] AccelerometerSamples { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual long NanosecondsSinceStart { get; }
	public virtual SRPhotoplethysmogramOpticalSample[] OpticalSamples { get; }
	public virtual Foundation.NSDate StartDate { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitTemperature> Temperature { get; }
	public virtual Foundation.NSString[] Usage { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRPhotoplethysmogramSampleUsage

[Serializable]
public enum SRPhotoplethysmogramSampleUsage {
	BackgroundSystem = 3,
	DeepBreathing = 1,
	ForegroundBloodOxygen = 2,
	ForegroundHeartRate = 0,
}

New Type: SensorKit.SRPhotoplethysmogramSampleUsageExtensions

public static class SRPhotoplethysmogramSampleUsageExtensions {
	// methods
	public static Foundation.NSString GetConstant (this SRPhotoplethysmogramSampleUsage self);
	public static SRPhotoplethysmogramSampleUsage GetValue (Foundation.NSString constant);
}

New Type: SensorKit.SRSpeechExpression

public class SRSpeechExpression : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRSpeechExpression (Foundation.NSCoder coder);
	protected SRSpeechExpression (Foundation.NSObjectFlag t);
	protected SRSpeechExpression (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual double Activation { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual double Confidence { get; }
	public virtual double Dominance { get; }
	public virtual double Mood { get; }
	public virtual CoreMedia.CMTimeRange TimeRange { get; }
	public virtual double Valence { get; }
	public virtual string Version { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRSpeechMetrics

public class SRSpeechMetrics : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRSpeechMetrics (Foundation.NSCoder coder);
	protected SRSpeechMetrics (Foundation.NSObjectFlag t);
	protected SRSpeechMetrics (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual SRAudioLevel AudioLevel { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRSpeechMetricsSessionFlags SessionFlags { get; }
	public virtual string SessionIdentifier { get; }
	public virtual SoundAnalysis.SNClassificationResult SoundClassification { get; }
	public virtual SRSpeechExpression SpeechExpression { get; }
	public virtual Speech.SFSpeechRecognitionResult SpeechRecognition { get; }
	public virtual double TimeSinceAudioStart { get; }
	public virtual Foundation.NSDate Timestamp { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRSpeechMetricsSessionFlags

[Serializable]
[Flags]
public enum SRSpeechMetricsSessionFlags {
	BypassVoiceProcessing = 1,
	Default = 0,
}

New Type: SensorKit.SRWristTemperature

public class SRWristTemperature : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRWristTemperature (Foundation.NSCoder coder);
	protected SRWristTemperature (Foundation.NSObjectFlag t);
	protected SRWristTemperature (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRWristTemperatureCondition Condition { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitTemperature> ErrorEstimate { get; }
	public virtual Foundation.NSDate Timestamp { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitTemperature> Value { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRWristTemperatureCondition

[Serializable]
[Flags]
public enum SRWristTemperatureCondition {
	InMotion = 4,
	None = 0,
	OffWrist = 1,
	OnCharger = 2,
}

New Type: SensorKit.SRWristTemperatureSession

public class SRWristTemperatureSession : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRWristTemperatureSession (Foundation.NSCoder coder);
	protected SRWristTemperatureSession (Foundation.NSObjectFlag t);
	protected SRWristTemperatureSession (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual double Duration { get; }
	public virtual Foundation.NSDate StartDate { get; }
	public virtual Foundation.NSEnumerator<SRWristTemperature> Temperatures { get; }
	public virtual string Version { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

Namespace SharedWithYou

Type Changed: SharedWithYou.ISWCollaborationViewDelegate

Added methods:

public virtual void DidDismissPopover (SWCollaborationView collaborationView);
public virtual bool ShouldPresentPopover (SWCollaborationView collaborationView);
public virtual void WillPresentPopover (SWCollaborationView collaborationView);

Type Changed: SharedWithYou.ISWHighlightCenterDelegate

Modified methods:

-public abstract void HighlightsDidChange (SWHighlightCenter highlightCenter)
+public virtual void HighlightsDidChange (SWHighlightCenter highlightCenter)

Type Changed: SharedWithYou.ISWHighlightEvent

Modified properties:

-public abstract Foundation.NSUrl HighlightUrl { get; }
+public virtual Foundation.NSUrl HighlightUrl { get; }

Namespace SharedWithYouCore

Type Changed: SharedWithYouCore.ISWCollaborationActionHandler

Modified methods:

-public abstract void HandleStartCollaborationAction (SWCollaborationCoordinator coordinator, SWStartCollaborationAction action)
+public virtual void HandleStartCollaborationAction (SWCollaborationCoordinator coordinator, SWStartCollaborationAction action)
-public abstract void HandleUpdateCollaborationParticipantsAction (SWCollaborationCoordinator coordinator, SWUpdateCollaborationParticipantsAction action)
+public virtual void HandleUpdateCollaborationParticipantsAction (SWCollaborationCoordinator coordinator, SWUpdateCollaborationParticipantsAction action)

Namespace ShazamKit

Type Changed: ShazamKit.ISHSessionDelegate

Added methods:

public virtual void DidFindMatch (SHSession session, SHMatch match);
public virtual void DidNotFindMatch (SHSession session, SHSignature signature, Foundation.NSError error);

Namespace SoundAnalysis

Type Changed: SoundAnalysis.ISNResultsObserving

Modified methods:

-public abstract void DidProduceResult (ISNRequest request, ISNResult result)
+public virtual void DidProduceResult (ISNRequest request, ISNResult result)

Added methods:

public virtual void DidComplete (ISNRequest request);
public virtual void DidFail (ISNRequest request, Foundation.NSError error);

Namespace Speech

Type Changed: Speech.ISFSpeechRecognitionTaskDelegate

Added methods:

public virtual void DidDetectSpeech (SFSpeechRecognitionTask task);
public virtual void DidFinishRecognition (SFSpeechRecognitionTask task, SFSpeechRecognitionResult recognitionResult);
public virtual void DidFinishSuccessfully (SFSpeechRecognitionTask task, bool successfully);
public virtual void DidHypothesizeTranscription (SFSpeechRecognitionTask task, SFTranscription transcription);
public virtual void FinishedReadingAudio (SFSpeechRecognitionTask task);
public virtual void WasCancelled (SFSpeechRecognitionTask task);

Type Changed: Speech.ISFSpeechRecognizerDelegate

Added method:

public virtual void AvailabilityDidChange (SFSpeechRecognizer speechRecognizer, bool available);

Namespace SpriteKit

Type Changed: SpriteKit.ISKPhysicsContactDelegate

Added methods:

public virtual void DidBeginContact (SKPhysicsContact contact);
public virtual void DidEndContact (SKPhysicsContact contact);

Type Changed: SpriteKit.ISKSceneDelegate

Added methods:

public virtual void DidApplyConstraints (SKScene scene);
public virtual void DidEvaluateActions (SKScene scene);
public virtual void DidFinishUpdate (SKScene scene);
public virtual void DidSimulatePhysics (SKScene scene);
public virtual void Update (double currentTime, SKScene scene);

Type Changed: SpriteKit.ISKViewDelegate

Added method:

public virtual bool ShouldRender (SKView view, double time);

Type Changed: SpriteKit.ISKWarpable

Modified properties:

-public abstract IntPtr SubdivisionLevels { get; set; }
+public virtual IntPtr SubdivisionLevels { get; set; }
-public abstract SKWarpGeometry WarpGeometry { get; set; }
+public virtual SKWarpGeometry WarpGeometry { get; set; }

Namespace StoreKit

Type Changed: StoreKit.ISKCloudServiceSetupViewControllerDelegate

Added method:

public virtual void DidDismiss (SKCloudServiceSetupViewController cloudServiceSetupViewController);

Type Changed: StoreKit.ISKOverlayDelegate

Added methods:

public virtual void DidFailToLoad (SKOverlay overlay, Foundation.NSError error);
public virtual void DidFinishDismissal (SKOverlay overlay, SKOverlayTransitionContext transitionContext);
public virtual void DidFinishPresentation (SKOverlay overlay, SKOverlayTransitionContext transitionContext);
public virtual void WillStartDismissal (SKOverlay overlay, SKOverlayTransitionContext transitionContext);
public virtual void WillStartPresentation (SKOverlay overlay, SKOverlayTransitionContext transitionContext);

Type Changed: StoreKit.ISKPaymentQueueDelegate

Added methods:

public virtual bool ShouldContinueTransaction (SKPaymentQueue paymentQueue, SKPaymentTransaction transaction, SKStorefront newStorefront);
public virtual bool ShouldShowPriceConsent (SKPaymentQueue paymentQueue);

Type Changed: StoreKit.ISKPaymentTransactionObserver

Modified methods:

-public abstract void UpdatedTransactions (SKPaymentQueue queue, SKPaymentTransaction[] transactions)
+public virtual void UpdatedTransactions (SKPaymentQueue queue, SKPaymentTransaction[] transactions)

Added methods:

public virtual void DidChangeStorefront (SKPaymentQueue queue);
public virtual void DidRevokeEntitlements (SKPaymentQueue queue, string[] productIdentifiers);
public virtual void RemovedTransactions (SKPaymentQueue queue, SKPaymentTransaction[] transactions);
public virtual void RestoreCompletedTransactionsFailedWithError (SKPaymentQueue queue, Foundation.NSError error);
public virtual void RestoreCompletedTransactionsFinished (SKPaymentQueue queue);
public virtual bool ShouldAddStorePayment (SKPaymentQueue queue, SKPayment payment, SKProduct product);
public virtual void UpdatedDownloads (SKPaymentQueue queue, SKDownload[] downloads);

Type Changed: StoreKit.ISKProductsRequestDelegate

Modified methods:

-public abstract void ReceivedResponse (SKProductsRequest request, SKProductsResponse response)
+public virtual void ReceivedResponse (SKProductsRequest request, SKProductsResponse response)

Type Changed: StoreKit.ISKRequestDelegate

Added methods:

public virtual void RequestFailed (SKRequest request, Foundation.NSError error);
public virtual void RequestFinished (SKRequest request);

Type Changed: StoreKit.ISKStoreProductViewControllerDelegate

Added method:

public virtual void Finished (SKStoreProductViewController controller);

Namespace UIKit

Type Changed: UIKit.INSCollectionLayoutContainer

Modified properties:

-public abstract NSDirectionalEdgeInsets ContentInsets { get; }
+public virtual NSDirectionalEdgeInsets ContentInsets { get; }
-public abstract CoreGraphics.CGSize ContentSize { get; }
+public virtual CoreGraphics.CGSize ContentSize { get; }
-public abstract NSDirectionalEdgeInsets EffectiveContentInsets { get; }
+public virtual NSDirectionalEdgeInsets EffectiveContentInsets { get; }
-public abstract CoreGraphics.CGSize EffectiveContentSize { get; }
+public virtual CoreGraphics.CGSize EffectiveContentSize { get; }

Type Changed: UIKit.INSCollectionLayoutEnvironment

Modified properties:

-public abstract INSCollectionLayoutContainer Container { get; }
+public virtual INSCollectionLayoutContainer Container { get; }
-public abstract UITraitCollection TraitCollection { get; }
+public virtual UITraitCollection TraitCollection { get; }

Type Changed: UIKit.INSCollectionLayoutVisibleItem

Modified properties:

-public abstract System.Runtime.InteropServices.NFloat Alpha { get; set; }
+public virtual System.Runtime.InteropServices.NFloat Alpha { get; set; }
-public abstract CoreGraphics.CGRect Frame { get; }
+public virtual CoreGraphics.CGRect Frame { get; }
-public abstract bool Hidden { get; set; }
+public virtual bool Hidden { get; set; }
-public abstract Foundation.NSIndexPath IndexPath { get; }
+public virtual Foundation.NSIndexPath IndexPath { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }
-public abstract UICollectionElementCategory RepresentedElementCategory { get; }
+public virtual UICollectionElementCategory RepresentedElementCategory { get; }
-public abstract string RepresentedElementKind { get; }
+public virtual string RepresentedElementKind { get; }
-public abstract CoreAnimation.CATransform3D Transform3D { get; set; }
+public virtual CoreAnimation.CATransform3D Transform3D { get; set; }
-public abstract IntPtr ZIndex { get; set; }
+public virtual IntPtr ZIndex { get; set; }

Type Changed: UIKit.INSLayoutManagerDelegate

Added methods:

public virtual void DidChangeGeometry (NSLayoutManager layoutManager, NSTextContainer textContainer, CoreGraphics.CGSize oldSize);
public virtual void DidCompleteLayout (NSLayoutManager layoutManager, NSTextContainer textContainer, bool layoutFinishedFlag);
public virtual void DidInvalidatedLayout (NSLayoutManager sender);
public virtual CoreGraphics.CGRect GetBoundingBox (NSLayoutManager layoutManager, UIntPtr glyphIndex, NSTextContainer textContainer, CoreGraphics.CGRect proposedRect, CoreGraphics.CGPoint glyphPosition, UIntPtr characterIndex);
public virtual System.Runtime.InteropServices.NFloat GetLineSpacingAfterGlyph (NSLayoutManager layoutManager, UIntPtr glyphIndex, CoreGraphics.CGRect rect);
public virtual System.Runtime.InteropServices.NFloat GetParagraphSpacingAfterGlyph (NSLayoutManager layoutManager, UIntPtr glyphIndex, CoreGraphics.CGRect rect);
public virtual System.Runtime.InteropServices.NFloat GetParagraphSpacingBeforeGlyph (NSLayoutManager layoutManager, UIntPtr glyphIndex, CoreGraphics.CGRect rect);
public virtual bool ShouldBreakLineByHyphenatingBeforeCharacter (NSLayoutManager layoutManager, UIntPtr characterIndex);
public virtual bool ShouldBreakLineByWordBeforeCharacter (NSLayoutManager layoutManager, UIntPtr characterIndex);
public virtual UIntPtr ShouldGenerateGlyphs (NSLayoutManager layoutManager, IntPtr glyphBuffer, IntPtr properties, IntPtr characterIndexes, UIFont font, Foundation.NSRange glyphRange);
public virtual bool ShouldSetLineFragmentRect (NSLayoutManager layoutManager, ref CoreGraphics.CGRect lineFragmentRect, ref CoreGraphics.CGRect lineFragmentUsedRect, ref System.Runtime.InteropServices.NFloat baselineOffset, NSTextContainer textContainer, Foundation.NSRange glyphRange);
public virtual NSControlCharacterAction ShouldUseAction (NSLayoutManager layoutManager, NSControlCharacterAction action, UIntPtr characterIndex);

Type Changed: UIKit.INSTextAttachmentContainer

Modified methods:

-public abstract CoreGraphics.CGRect GetAttachmentBounds (NSTextContainer textContainer, CoreGraphics.CGRect proposedLineFragment, CoreGraphics.CGPoint glyphPosition, UIntPtr characterIndex)
+public virtual CoreGraphics.CGRect GetAttachmentBounds (NSTextContainer textContainer, CoreGraphics.CGRect proposedLineFragment, CoreGraphics.CGPoint glyphPosition, UIntPtr characterIndex)
-public abstract UIImage GetImageForBounds (CoreGraphics.CGRect bounds, NSTextContainer textContainer, UIntPtr characterIndex)
+public virtual UIImage GetImageForBounds (CoreGraphics.CGRect bounds, NSTextContainer textContainer, UIntPtr characterIndex)

Type Changed: UIKit.INSTextAttachmentLayout

Modified methods:

-public abstract CoreGraphics.CGRect GetAttachmentBounds (Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% attributes, INSTextLocation location, NSTextContainer textContainer, CoreGraphics.CGRect proposedLineFragment, CoreGraphics.CGPoint position)
+public virtual CoreGraphics.CGRect GetAttachmentBounds (Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% attributes, INSTextLocation location, NSTextContainer textContainer, CoreGraphics.CGRect proposedLineFragment, CoreGraphics.CGPoint position)
-public abstract UIImage GetImageForBounds (CoreGraphics.CGRect bounds, Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% attributes, INSTextLocation location, NSTextContainer textContainer)
+public virtual UIImage GetImageForBounds (CoreGraphics.CGRect bounds, Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% attributes, INSTextLocation location, NSTextContainer textContainer)
-public abstract NSTextAttachmentViewProvider GetViewProvider (UIView parentView, INSTextLocation location, NSTextContainer textContainer)
+public virtual NSTextAttachmentViewProvider GetViewProvider (UIView parentView, INSTextLocation location, NSTextContainer textContainer)

Type Changed: UIKit.INSTextContentManagerDelegate

Added methods:

public virtual NSTextElement GetTextContentManager (NSTextContentManager textContentManager, INSTextLocation location);
public virtual bool ShouldEnumerateTextElement (NSTextContentManager textContentManager, NSTextElement textElement, NSTextContentManagerEnumerationOptions options);

Type Changed: UIKit.INSTextContentStorageDelegate

Added method:

public virtual NSTextParagraph GetTextParagraph (NSTextContentStorage textContentStorage, Foundation.NSRange range);

Type Changed: UIKit.INSTextElementProvider

Modified properties:

-public abstract NSTextRange DocumentRange { get; }
+public virtual NSTextRange DocumentRange { get; }

Modified methods:

-public abstract INSTextLocation EnumerateTextElements (INSTextLocation textLocation, NSTextContentManagerEnumerationOptions options, System.Func%LESSERTHANREPLACEMENT%NSTextElement,System.Boolean%GREATERTHANREPLACEMENT% handler)
+public virtual INSTextLocation EnumerateTextElements (INSTextLocation textLocation, NSTextContentManagerEnumerationOptions options, System.Func%LESSERTHANREPLACEMENT%NSTextElement,System.Boolean%GREATERTHANREPLACEMENT% handler)
-public abstract void ReplaceContents (NSTextRange range, NSTextElement[] textElements)
+public virtual void ReplaceContents (NSTextRange range, NSTextElement[] textElements)
-public abstract void Synchronize (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Synchronize (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Added methods:

public virtual NSTextRange AdjustedRange (NSTextRange textRange, bool forEditingTextSelection);
public virtual INSTextLocation GetLocation (INSTextLocation location, IntPtr offset);
public virtual IntPtr GetOffset (INSTextLocation from, INSTextLocation to);

Type Changed: UIKit.INSTextLayoutManagerDelegate

Added methods:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetRenderingAttributes (NSTextLayoutManager textLayoutManager, Foundation.NSObject link, INSTextLocation location, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> renderingAttributes);
public virtual NSTextLayoutFragment GetTextLayoutFragment (NSTextLayoutManager textLayoutManager, INSTextLocation location, NSTextElement textElement);
public virtual bool ShouldBreakLineBeforeLocation (NSTextLayoutManager textLayoutManager, INSTextLocation location, bool hyphenating);

Type Changed: UIKit.INSTextLayoutOrientationProvider

Modified properties:

-public abstract NSTextLayoutOrientation LayoutOrientation { get; }
+public virtual NSTextLayoutOrientation LayoutOrientation { get; }

Type Changed: UIKit.INSTextLocation

Modified methods:

-public abstract Foundation.NSComparisonResult Compare (INSTextLocation location)
+public virtual Foundation.NSComparisonResult Compare (INSTextLocation location)

Type Changed: UIKit.INSTextSelectionDataSource

Modified properties:

-public abstract NSTextRange DocumentRange { get; }
+public virtual NSTextRange DocumentRange { get; }

Modified methods:

-public abstract void EnumerateCaretOffsets (INSTextLocation location, NSTextSelectionDataSourceEnumerateCaretOffsetsDelegate handler)
+public virtual void EnumerateCaretOffsets (INSTextLocation location, NSTextSelectionDataSourceEnumerateCaretOffsetsDelegate handler)
-public abstract void EnumerateSubstrings (INSTextLocation location, Foundation.NSStringEnumerationOptions options, NSTextSelectionDataSourceEnumerateSubstringsDelegate handler)
+public virtual void EnumerateSubstrings (INSTextLocation location, Foundation.NSStringEnumerationOptions options, NSTextSelectionDataSourceEnumerateSubstringsDelegate handler)
-public abstract NSTextSelectionNavigationWritingDirection GetBaseWritingDirection (INSTextLocation location)
+public virtual NSTextSelectionNavigationWritingDirection GetBaseWritingDirection (INSTextLocation location)
-public abstract NSTextRange GetLineFragmentRange (CoreGraphics.CGPoint point, INSTextLocation location)
+public virtual NSTextRange GetLineFragmentRange (CoreGraphics.CGPoint point, INSTextLocation location)
-public abstract INSTextLocation GetLocation (INSTextLocation location, IntPtr offset)
+public virtual INSTextLocation GetLocation (INSTextLocation location, IntPtr offset)
-public abstract IntPtr GetOffsetFromLocation (INSTextLocation from, INSTextLocation to)
+public virtual IntPtr GetOffsetFromLocation (INSTextLocation from, INSTextLocation to)
-public abstract NSTextRange GetTextRange (NSTextSelectionGranularity selectionGranularity, INSTextLocation location)
+public virtual NSTextRange GetTextRange (NSTextSelectionGranularity selectionGranularity, INSTextLocation location)

Added methods:

public virtual void EnumerateContainerBoundaries (INSTextLocation location, bool reverse, NSTextSelectionDataSourceEnumerateContainerBoundariesDelegate handler);
public virtual NSTextSelectionNavigationLayoutOrientation GetTextLayoutOrientation (INSTextLocation location);

Type Changed: UIKit.INSTextStorageDelegate

Added methods:

public virtual void DidProcessEditing (NSTextStorage textStorage, NSTextStorageEditActions editedMask, Foundation.NSRange editedRange, IntPtr delta);
public virtual void WillProcessEditing (NSTextStorage textStorage, NSTextStorageEditActions editedMask, Foundation.NSRange editedRange, IntPtr delta);

Type Changed: UIKit.INSTextStorageObserving

Modified properties:

-public abstract NSTextStorage TextStorage { get; set; }
+public virtual NSTextStorage TextStorage { get; set; }

Modified methods:

-public abstract void PerformEditingTransaction (NSTextStorage textStorage, System.Action transaction)
+public virtual void PerformEditingTransaction (NSTextStorage textStorage, System.Action transaction)
-public abstract void ProcessEditing (NSTextStorage textStorage, NSTextStorageEditActions editMask, Foundation.NSRange newCharRange, IntPtr delta, Foundation.NSRange invalidatedCharRange)
+public virtual void ProcessEditing (NSTextStorage textStorage, NSTextStorageEditActions editMask, Foundation.NSRange newCharRange, IntPtr delta, Foundation.NSRange invalidatedCharRange)

Type Changed: UIKit.INSTextViewportLayoutControllerDelegate

Modified methods:

-public abstract void ConfigureRenderingSurface (NSTextViewportLayoutController textViewportLayoutController, NSTextLayoutFragment textLayoutFragment)
+public virtual void ConfigureRenderingSurface (NSTextViewportLayoutController textViewportLayoutController, NSTextLayoutFragment textLayoutFragment)
-public abstract CoreGraphics.CGRect GetViewportBounds (NSTextViewportLayoutController textViewportLayoutController)
+public virtual CoreGraphics.CGRect GetViewportBounds (NSTextViewportLayoutController textViewportLayoutController)

Added methods:

public virtual void DidLayout (NSTextViewportLayoutController textViewportLayoutController);
public virtual void WillLayout (NSTextViewportLayoutController textViewportLayoutController);

Type Changed: UIKit.IUIAccelerometerDelegate

Added method:

public virtual void DidAccelerate (UIAccelerometer accelerometer, UIAcceleration acceleration);

Type Changed: UIKit.IUIAccessibilityContainer

Added property:

public virtual UIAccessibilityContainerType AccessibilityContainerType { get; set; }

Added methods:

public virtual IntPtr AccessibilityElementCount ();
public virtual Foundation.NSObject GetAccessibilityElementAt (IntPtr index);
public virtual Foundation.NSObject GetAccessibilityElements ();
public virtual IntPtr GetIndexOfAccessibilityElement (Foundation.NSObject element);
public virtual void SetAccessibilityElements (Foundation.NSObject elements);

Type Changed: UIKit.IUIAccessibilityContainerDataTable

Modified properties:

-public abstract UIntPtr AccessibilityColumnCount { get; }
+public virtual UIntPtr AccessibilityColumnCount { get; }
-public abstract UIntPtr AccessibilityRowCount { get; }
+public virtual UIntPtr AccessibilityRowCount { get; }

Modified methods:

-public abstract IUIAccessibilityContainerDataTableCell GetAccessibilityDataTableCellElement (UIntPtr row, UIntPtr column)
+public virtual IUIAccessibilityContainerDataTableCell GetAccessibilityDataTableCellElement (UIntPtr row, UIntPtr column)

Added methods:

public virtual IUIAccessibilityContainerDataTableCell[] GetAccessibilityHeaderElementsForColumn (UIntPtr column);
public virtual IUIAccessibilityContainerDataTableCell[] GetAccessibilityHeaderElementsForRow (UIntPtr row);

Type Changed: UIKit.IUIAccessibilityContainerDataTableCell

Modified methods:

-public abstract Foundation.NSRange GetAccessibilityColumnRange ()
+public virtual Foundation.NSRange GetAccessibilityColumnRange ()
-public abstract Foundation.NSRange GetAccessibilityRowRange ()
+public virtual Foundation.NSRange GetAccessibilityRowRange ()

Type Changed: UIKit.IUIAccessibilityContentSizeCategoryImageAdjusting

Modified properties:

-public abstract bool AdjustsImageSizeForAccessibilityContentSizeCategory { get; set; }
+public virtual bool AdjustsImageSizeForAccessibilityContentSizeCategory { get; set; }

Type Changed: UIKit.IUIAccessibilityIdentification

Modified properties:

-public abstract string AccessibilityIdentifier { get; set; }
+public virtual string AccessibilityIdentifier { get; set; }

Type Changed: UIKit.IUIAccessibilityReadingContent

Modified methods:

-public abstract string GetAccessibilityContent (IntPtr lineNumber)
+public virtual string GetAccessibilityContent (IntPtr lineNumber)
-public abstract CoreGraphics.CGRect GetAccessibilityFrame (IntPtr lineNumber)
+public virtual CoreGraphics.CGRect GetAccessibilityFrame (IntPtr lineNumber)
-public abstract IntPtr GetAccessibilityLineNumber (CoreGraphics.CGPoint point)
+public virtual IntPtr GetAccessibilityLineNumber (CoreGraphics.CGPoint point)
-public abstract string GetAccessibilityPageContent ()
+public virtual string GetAccessibilityPageContent ()

Added methods:

public virtual Foundation.NSAttributedString GetAccessibilityAttributedContent (IntPtr lineNumber);
public virtual Foundation.NSAttributedString GetAccessibilityAttributedPageContent ();

Type Changed: UIKit.IUIActionSheetDelegate

Added methods:

public virtual void Canceled (UIActionSheet actionSheet);
public virtual void Clicked (UIActionSheet actionSheet, IntPtr buttonIndex);
public virtual void Dismissed (UIActionSheet actionSheet, IntPtr buttonIndex);
public virtual void Presented (UIActionSheet actionSheet);
public virtual void WillDismiss (UIActionSheet actionSheet, IntPtr buttonIndex);
public virtual void WillPresent (UIActionSheet actionSheet);

Type Changed: UIKit.IUIActivityItemSource

Modified methods:

-public abstract Foundation.NSObject GetItemForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType)
+public virtual Foundation.NSObject GetItemForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType)
-public abstract Foundation.NSObject GetPlaceholderData (UIActivityViewController activityViewController)
+public virtual Foundation.NSObject GetPlaceholderData (UIActivityViewController activityViewController)

Added methods:

public virtual string GetDataTypeIdentifierForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType);
public virtual LinkPresentation.LPLinkMetadata GetLinkMetadata (UIActivityViewController activityViewController);
public virtual string GetSubjectForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType);
public virtual UIImage GetThumbnailImageForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType, CoreGraphics.CGSize suggestedSize);

Type Changed: UIKit.IUIActivityItemsConfigurationProviding

Modified properties:

-public abstract IUIActivityItemsConfigurationReading ActivityItemsConfiguration { get; }
+public virtual IUIActivityItemsConfigurationReading ActivityItemsConfiguration { get; }

Type Changed: UIKit.IUIActivityItemsConfigurationReading

Modified properties:

-public abstract Foundation.NSItemProvider[] ItemProvidersForActivityItemsConfiguration { get; }
+public virtual Foundation.NSItemProvider[] ItemProvidersForActivityItemsConfiguration { get; }

Added methods:

public virtual Foundation.NSObject GetActivityItemsConfigurationMetadata (Foundation.NSString activityItemsConfigurationMetadataKey);
public virtual Foundation.NSObject GetActivityItemsConfigurationMetadata (IntPtr index, Foundation.NSString activityItemsConfigurationMetadataKey);
public virtual Foundation.NSItemProvider GetActivityItemsConfigurationPreview (IntPtr index, Foundation.NSString activityItemsConfigurationPreviewIntent, CoreGraphics.CGSize suggestedSize);
public virtual bool GetActivityItemsConfigurationSupportsInteraction (Foundation.NSString activityItemsConfigurationInteraction);
public virtual UIActivity[] GetApplicationActivitiesForActivityItemsConfiguration ();

Type Changed: UIKit.IUIAdaptivePresentationControllerDelegate

Added methods:

public virtual void DidAttemptToDismiss (UIPresentationController presentationController);
public virtual void DidDismiss (UIPresentationController presentationController);
public virtual UIModalPresentationStyle GetAdaptivePresentationStyle (UIPresentationController forPresentationController);
public virtual UIModalPresentationStyle GetAdaptivePresentationStyle (UIPresentationController controller, UITraitCollection traitCollection);
public virtual UIViewController GetViewControllerForAdaptivePresentation (UIPresentationController controller, UIModalPresentationStyle style);
public virtual void PrepareAdaptivePresentationController (UIPresentationController presentationController, UIPresentationController adaptivePresentationController);
public virtual bool ShouldDismiss (UIPresentationController presentationController);
public virtual void WillDismiss (UIPresentationController presentationController);
public virtual void WillPresent (UIPresentationController presentationController, UIModalPresentationStyle style, IUIViewControllerTransitionCoordinator transitionCoordinator);

Type Changed: UIKit.IUIAlertViewDelegate

Added methods:

public virtual void Canceled (UIAlertView alertView);
public virtual void Clicked (UIAlertView alertview, IntPtr buttonIndex);
public virtual void Dismissed (UIAlertView alertView, IntPtr buttonIndex);
public virtual void Presented (UIAlertView alertView);
public virtual bool ShouldEnableFirstOtherButton (UIAlertView alertView);
public virtual void WillDismiss (UIAlertView alertView, IntPtr buttonIndex);
public virtual void WillPresent (UIAlertView alertView);

Type Changed: UIKit.IUIApplicationDelegate

Added property:

public virtual UIWindow Window { get; set; }

Added methods:

public virtual bool AccessibilityPerformMagicTap ();
public virtual void ApplicationSignificantTimeChange (UIApplication application);
public virtual void ChangedStatusBarFrame (UIApplication application, CoreGraphics.CGRect oldStatusBarFrame);
public virtual bool ContinueUserActivity (UIApplication application, Foundation.NSUserActivity userActivity, UIApplicationRestorationHandler completionHandler);
public virtual void DidChangeStatusBarOrientation (UIApplication application, UIInterfaceOrientation oldStatusBarOrientation);
public virtual void DidDecodeRestorableState (UIApplication application, Foundation.NSCoder coder);
public virtual void DidDiscardSceneSessions (UIApplication application, Foundation.NSSet<UISceneSession> sceneSessions);
public virtual void DidEnterBackground (UIApplication application);
public virtual void DidFailToContinueUserActivity (UIApplication application, string userActivityType, Foundation.NSError error);
public virtual void DidReceiveRemoteNotification (UIApplication application, Foundation.NSDictionary userInfo, System.Action<UIBackgroundFetchResult> completionHandler);
public virtual void DidRegisterUserNotificationSettings (UIApplication application, UIUserNotificationSettings notificationSettings);
public virtual void FailedToRegisterForRemoteNotifications (UIApplication application, Foundation.NSError error);
public virtual void FinishedLaunching (UIApplication application);
public virtual bool FinishedLaunching (UIApplication application, Foundation.NSDictionary launchOptions);
public virtual UISceneConfiguration GetConfiguration (UIApplication application, UISceneSession connectingSceneSession, UISceneConnectionOptions options);
public virtual Foundation.NSObject GetHandlerForIntent (UIApplication application, Intents.INIntent intent);
public virtual UIInterfaceOrientationMask GetSupportedInterfaceOrientations (UIApplication application, UIWindow forWindow);
public virtual UIViewController GetViewController (UIApplication application, string[] restorationIdentifierComponents, Foundation.NSCoder coder);
public virtual void HandleAction (UIApplication application, string actionIdentifier, Foundation.NSDictionary remoteNotificationInfo, System.Action completionHandler);
public virtual void HandleAction (UIApplication application, string actionIdentifier, UILocalNotification localNotification, System.Action completionHandler);
public virtual void HandleAction (UIApplication application, string actionIdentifier, Foundation.NSDictionary remoteNotificationInfo, Foundation.NSDictionary responseInfo, System.Action completionHandler);
public virtual void HandleAction (UIApplication application, string actionIdentifier, UILocalNotification localNotification, Foundation.NSDictionary responseInfo, System.Action completionHandler);
public virtual void HandleEventsForBackgroundUrl (UIApplication application, string sessionIdentifier, System.Action completionHandler);
public virtual void HandleIntent (UIApplication application, Intents.INIntent intent, System.Action<Intents.INIntentResponse> completionHandler);
public virtual bool HandleOpenURL (UIApplication application, Foundation.NSUrl url);
public virtual void HandleWatchKitExtensionRequest (UIApplication application, Foundation.NSDictionary userInfo, System.Action<Foundation.NSDictionary> reply);
public virtual void OnActivated (UIApplication application);
public virtual void OnResignActivation (UIApplication application);
public virtual bool OpenUrl (UIApplication app, Foundation.NSUrl url, Foundation.NSDictionary options);
public virtual bool OpenUrl (UIApplication application, Foundation.NSUrl url, string sourceApplication, Foundation.NSObject annotation);
public virtual void PerformActionForShortcutItem (UIApplication application, UIApplicationShortcutItem shortcutItem, UIOperationHandler completionHandler);
public virtual void PerformFetch (UIApplication application, System.Action<UIBackgroundFetchResult> completionHandler);
public virtual void ProtectedDataDidBecomeAvailable (UIApplication application);
public virtual void ProtectedDataWillBecomeUnavailable (UIApplication application);
public virtual void ReceiveMemoryWarning (UIApplication application);
public virtual void ReceivedLocalNotification (UIApplication application, UILocalNotification notification);
public virtual void ReceivedRemoteNotification (UIApplication application, Foundation.NSDictionary userInfo);
public virtual void RegisteredForRemoteNotifications (UIApplication application, Foundation.NSData deviceToken);
public virtual bool ShouldAllowExtensionPointIdentifier (UIApplication application, Foundation.NSString extensionPointIdentifier);
public virtual bool ShouldAutomaticallyLocalizeKeyCommands (UIApplication application);
public virtual void ShouldRequestHealthAuthorization (UIApplication application);
public virtual bool ShouldRestoreApplicationState (UIApplication application, Foundation.NSCoder coder);
public virtual bool ShouldRestoreSecureApplicationState (UIApplication application, Foundation.NSCoder coder);
public virtual bool ShouldSaveApplicationState (UIApplication application, Foundation.NSCoder coder);
public virtual bool ShouldSaveSecureApplicationState (UIApplication application, Foundation.NSCoder coder);
public virtual void UserActivityUpdated (UIApplication application, Foundation.NSUserActivity userActivity);
public virtual void UserDidAcceptCloudKitShare (UIApplication application, CloudKit.CKShareMetadata cloudKitShareMetadata);
public virtual void WillChangeStatusBarFrame (UIApplication application, CoreGraphics.CGRect newStatusBarFrame);
public virtual void WillChangeStatusBarOrientation (UIApplication application, UIInterfaceOrientation newStatusBarOrientation, double duration);
public virtual bool WillContinueUserActivity (UIApplication application, string userActivityType);
public virtual void WillEncodeRestorableState (UIApplication application, Foundation.NSCoder coder);
public virtual void WillEnterForeground (UIApplication application);
public virtual bool WillFinishLaunching (UIApplication application, Foundation.NSDictionary launchOptions);
public virtual void WillTerminate (UIApplication application);

Type Changed: UIKit.IUIBarPositioning

Modified properties:

-public abstract UIBarPosition BarPosition { get; }
+public virtual UIBarPosition BarPosition { get; }

Type Changed: UIKit.IUIBarPositioningDelegate

Added method:

public virtual UIBarPosition GetPositionForBar (IUIBarPositioning barPositioning);

Type Changed: UIKit.IUICGFloatTraitDefinition

Added method:

public static System.Runtime.InteropServices.NFloat GetDefaultValue<T> ();

Type Changed: UIKit.IUICalendarSelectionMultiDateDelegate

Modified methods:

-public abstract void DidDeselectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents)
+public virtual void DidDeselectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents)
-public abstract void DidSelectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents)
+public virtual void DidSelectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents)

Added methods:

public virtual bool CanDeselectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents);
public virtual bool CanSelectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents);

Type Changed: UIKit.IUICalendarSelectionSingleDateDelegate

Modified methods:

-public abstract void DidSelectDate (UICalendarSelectionSingleDate selection, Foundation.NSDateComponents dateComponents)
+public virtual void DidSelectDate (UICalendarSelectionSingleDate selection, Foundation.NSDateComponents dateComponents)

Added method:

public virtual bool CanSelectDate (UICalendarSelectionSingleDate selection, Foundation.NSDateComponents dateComponents);

Type Changed: UIKit.IUICalendarViewDelegate

Modified methods:

-public abstract UICalendarViewDecoration GetDecoration (UICalendarView calendarView, Foundation.NSDateComponents dateComponents)
+public virtual UICalendarViewDecoration GetDecoration (UICalendarView calendarView, Foundation.NSDateComponents dateComponents)

Added method:

public virtual void DidChangeVisibleDateComponents (UICalendarView calendarView, Foundation.NSDateComponents previousDateComponents);

Type Changed: UIKit.IUICloudSharingControllerDelegate

Modified methods:

-public abstract void FailedToSaveShare (UICloudSharingController csc, Foundation.NSError error)
+public virtual void FailedToSaveShare (UICloudSharingController csc, Foundation.NSError error)
-public abstract string GetItemTitle (UICloudSharingController csc)
+public virtual string GetItemTitle (UICloudSharingController csc)

Added methods:

public virtual void DidSaveShare (UICloudSharingController csc);
public virtual void DidStopSharing (UICloudSharingController csc);
public virtual Foundation.NSData GetItemThumbnailData (UICloudSharingController csc);
public virtual string GetItemType (UICloudSharingController csc);

Type Changed: UIKit.IUICollectionViewDataSource

Modified methods:

-public abstract UICollectionViewCell GetCell (UICollectionView collectionView, Foundation.NSIndexPath indexPath)
+public virtual UICollectionViewCell GetCell (UICollectionView collectionView, Foundation.NSIndexPath indexPath)
-public abstract IntPtr GetItemsCount (UICollectionView collectionView, IntPtr section)
+public virtual IntPtr GetItemsCount (UICollectionView collectionView, IntPtr section)

Added methods:

public virtual bool CanMoveItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath GetIndexPath (UICollectionView collectionView, string title, IntPtr atIndex);
public virtual string[] GetIndexTitles (UICollectionView collectionView);
public virtual UICollectionReusableView GetViewForSupplementaryElement (UICollectionView collectionView, Foundation.NSString elementKind, Foundation.NSIndexPath indexPath);
public virtual void MoveItem (UICollectionView collectionView, Foundation.NSIndexPath sourceIndexPath, Foundation.NSIndexPath destinationIndexPath);
public virtual IntPtr NumberOfSections (UICollectionView collectionView);

Type Changed: UIKit.IUICollectionViewDataSourcePrefetching

Modified methods:

-public abstract void PrefetchItems (UICollectionView collectionView, Foundation.NSIndexPath[] indexPaths)
+public virtual void PrefetchItems (UICollectionView collectionView, Foundation.NSIndexPath[] indexPaths)

Added method:

public virtual void CancelPrefetching (UICollectionView collectionView, Foundation.NSIndexPath[] indexPaths);

Type Changed: UIKit.IUICollectionViewDelegate

Added methods:

public virtual bool CanEditItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool CanFocusItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool CanPerformAction (UICollectionView collectionView, ObjCRuntime.Selector action, Foundation.NSIndexPath indexPath, Foundation.NSObject sender);
public virtual bool CanPerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void CellDisplayingEnded (UICollectionView collectionView, UICollectionViewCell cell, Foundation.NSIndexPath indexPath);
public virtual void DidBeginMultipleSelectionInteraction (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void DidEndMultipleSelectionInteraction (UICollectionView collectionView);
public virtual void DidUpdateFocus (UICollectionView collectionView, UICollectionViewFocusUpdateContext context, UIFocusAnimationCoordinator coordinator);
public virtual UIContextMenuConfiguration GetContextMenuConfiguration (UICollectionView collectionView, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);
public virtual UIContextMenuConfiguration GetContextMenuConfiguration (UICollectionView collectionView, Foundation.NSIndexPath[] indexPaths, CoreGraphics.CGPoint point);
public virtual UITargetedPreview GetContextMenuConfigurationDismissalPreview (UICollectionView collectionView, UIContextMenuConfiguration configuration, Foundation.NSIndexPath indexPath);
public virtual UITargetedPreview GetContextMenuConfigurationHighlightPreview (UICollectionView collectionView, UIContextMenuConfiguration configuration, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath GetIndexPathForPreferredFocusedView (UICollectionView collectionView);
public virtual UITargetedPreview GetPreviewForDismissingContextMenu (UICollectionView collectionView, UIContextMenuConfiguration configuration);
public virtual UITargetedPreview GetPreviewForHighlightingContextMenu (UICollectionView collectionView, UIContextMenuConfiguration configuration);
public virtual UIWindowSceneActivationConfiguration GetSceneActivationConfigurationForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);
public virtual bool GetSelectionFollowsFocusForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual CoreGraphics.CGPoint GetTargetContentOffset (UICollectionView collectionView, CoreGraphics.CGPoint proposedContentOffset);
public virtual Foundation.NSIndexPath GetTargetIndexPathForMove (UICollectionView collectionView, Foundation.NSIndexPath originalIndexPath, Foundation.NSIndexPath proposedIndexPath);
public virtual Foundation.NSIndexPath GetTargetIndexPathForMoveOfItemFromOriginalIndexPath (UICollectionView collectionView, Foundation.NSIndexPath originalIndexPath, Foundation.NSIndexPath currentIndexPath, Foundation.NSIndexPath proposedIndexPath);
public virtual void ItemDeselected (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void ItemHighlighted (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void ItemSelected (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void ItemUnhighlighted (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void PerformAction (UICollectionView collectionView, ObjCRuntime.Selector action, Foundation.NSIndexPath indexPath, Foundation.NSObject sender);
public virtual void PerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldBeginMultipleSelectionInteraction (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldDeselectItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldHighlightItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldSelectItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldShowMenu (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldSpringLoadItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath, IUISpringLoadedInteractionContext context);
public virtual bool ShouldUpdateFocus (UICollectionView collectionView, UICollectionViewFocusUpdateContext context);
public virtual void SupplementaryViewDisplayingEnded (UICollectionView collectionView, UICollectionReusableView view, Foundation.NSString elementKind, Foundation.NSIndexPath indexPath);
public virtual UICollectionViewTransitionLayout TransitionLayout (UICollectionView collectionView, UICollectionViewLayout fromLayout, UICollectionViewLayout toLayout);
public virtual void WillDisplayCell (UICollectionView collectionView, UICollectionViewCell cell, Foundation.NSIndexPath indexPath);
public virtual void WillDisplayContextMenu (UICollectionView collectionView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillDisplaySupplementaryView (UICollectionView collectionView, UICollectionReusableView view, string elementKind, Foundation.NSIndexPath indexPath);
public virtual void WillEndContextMenuInteraction (UICollectionView collectionView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillPerformPreviewAction (UICollectionView collectionView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionCommitAnimating animator);

Type Changed: UIKit.IUICollectionViewDelegateFlowLayout

Added methods:

public virtual UIEdgeInsets GetInsetForSection (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat GetMinimumInteritemSpacingForSection (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat GetMinimumLineSpacingForSection (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual CoreGraphics.CGSize GetReferenceSizeForFooter (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual CoreGraphics.CGSize GetReferenceSizeForHeader (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual CoreGraphics.CGSize GetSizeForItem (UICollectionView collectionView, UICollectionViewLayout layout, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.IUICollectionViewDragDelegate

Modified methods:

-public abstract UIDragItem[] GetItemsForBeginningDragSession (UICollectionView collectionView, IUIDragSession session, Foundation.NSIndexPath indexPath)
+public virtual UIDragItem[] GetItemsForBeginningDragSession (UICollectionView collectionView, IUIDragSession session, Foundation.NSIndexPath indexPath)

Added methods:

public virtual bool DragSessionAllowsMoveOperation (UICollectionView collectionView, IUIDragSession session);
public virtual void DragSessionDidEnd (UICollectionView collectionView, IUIDragSession session);
public virtual bool DragSessionIsRestrictedToDraggingApplication (UICollectionView collectionView, IUIDragSession session);
public virtual void DragSessionWillBegin (UICollectionView collectionView, IUIDragSession session);
public virtual UIDragPreviewParameters GetDragPreviewParameters (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual UIDragItem[] GetItemsForAddingToDragSession (UICollectionView collectionView, IUIDragSession session, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);

Type Changed: UIKit.IUICollectionViewDropCoordinator

Modified properties:

-public abstract Foundation.NSIndexPath DestinationIndexPath { get; }
+public virtual Foundation.NSIndexPath DestinationIndexPath { get; }
-public abstract IUICollectionViewDropItem[] Items { get; }
+public virtual IUICollectionViewDropItem[] Items { get; }
-public abstract UICollectionViewDropProposal Proposal { get; }
+public virtual UICollectionViewDropProposal Proposal { get; }
-public abstract IUIDropSession Session { get; }
+public virtual IUIDropSession Session { get; }

Modified methods:

-public abstract IUIDragAnimating DropItemIntoItem (UIDragItem dragItem, Foundation.NSIndexPath itemIndexPath, CoreGraphics.CGRect rect)
+public virtual IUIDragAnimating DropItemIntoItem (UIDragItem dragItem, Foundation.NSIndexPath itemIndexPath, CoreGraphics.CGRect rect)
-public abstract IUIDragAnimating DropItemToItem (UIDragItem dragItem, Foundation.NSIndexPath itemIndexPath)
+public virtual IUIDragAnimating DropItemToItem (UIDragItem dragItem, Foundation.NSIndexPath itemIndexPath)
-public abstract IUICollectionViewDropPlaceholderContext DropItemToPlaceholder (UIDragItem dragItem, UICollectionViewDropPlaceholder placeholder)
+public virtual IUICollectionViewDropPlaceholderContext DropItemToPlaceholder (UIDragItem dragItem, UICollectionViewDropPlaceholder placeholder)
-public abstract IUIDragAnimating DropItemToTarget (UIDragItem dragItem, UIDragPreviewTarget target)
+public virtual IUIDragAnimating DropItemToTarget (UIDragItem dragItem, UIDragPreviewTarget target)

Type Changed: UIKit.IUICollectionViewDropDelegate

Modified methods:

-public abstract void PerformDrop (UICollectionView collectionView, IUICollectionViewDropCoordinator coordinator)
+public virtual void PerformDrop (UICollectionView collectionView, IUICollectionViewDropCoordinator coordinator)

Added methods:

public virtual bool CanHandleDropSession (UICollectionView collectionView, IUIDropSession session);
public virtual void DropSessionDidEnd (UICollectionView collectionView, IUIDropSession session);
public virtual void DropSessionDidEnter (UICollectionView collectionView, IUIDropSession session);
public virtual void DropSessionDidExit (UICollectionView collectionView, IUIDropSession session);
public virtual UICollectionViewDropProposal DropSessionDidUpdate (UICollectionView collectionView, IUIDropSession session, Foundation.NSIndexPath destinationIndexPath);
public virtual UIDragPreviewParameters GetDropPreviewParameters (UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.IUICollectionViewDropItem

Modified properties:

-public abstract UIDragItem DragItem { get; }
+public virtual UIDragItem DragItem { get; }
-public abstract CoreGraphics.CGSize PreviewSize { get; }
+public virtual CoreGraphics.CGSize PreviewSize { get; }
-public abstract Foundation.NSIndexPath SourceIndexPath { get; }
+public virtual Foundation.NSIndexPath SourceIndexPath { get; }

Type Changed: UIKit.IUICollectionViewDropPlaceholderContext

Modified properties:

-public abstract UIDragItem DragItem { get; }
+public virtual UIDragItem DragItem { get; }

Modified methods:

-public abstract bool CommitInsertion (System.Action%LESSERTHANREPLACEMENT%Foundation.NSIndexPath%GREATERTHANREPLACEMENT% dataSourceUpdates)
+public virtual bool CommitInsertion (System.Action%LESSERTHANREPLACEMENT%Foundation.NSIndexPath%GREATERTHANREPLACEMENT% dataSourceUpdates)
-public abstract bool DeletePlaceholder ()
+public virtual bool DeletePlaceholder ()
-public abstract void SetNeedsCellUpdate ()
+public virtual void SetNeedsCellUpdate ()

Type Changed: UIKit.IUICollisionBehaviorDelegate

Added methods:

public virtual void BeganBoundaryContact (UICollisionBehavior behavior, IUIDynamicItem dynamicItem, Foundation.NSObject boundaryIdentifier, CoreGraphics.CGPoint atPoint);
public virtual void BeganContact (UICollisionBehavior behavior, IUIDynamicItem firstItem, IUIDynamicItem secondItem, CoreGraphics.CGPoint atPoint);
public virtual void EndedBoundaryContact (UICollisionBehavior behavior, IUIDynamicItem dynamicItem, Foundation.NSObject boundaryIdentifier);
public virtual void EndedContact (UICollisionBehavior behavior, IUIDynamicItem firstItem, IUIDynamicItem secondItem);

Type Changed: UIKit.IUIColorPickerViewControllerDelegate

Added methods:

public virtual void DidFinish (UIColorPickerViewController viewController);
public virtual void DidSelectColor (UIColorPickerViewController viewController);
public virtual void DidSelectColor (UIColorPickerViewController viewController, UIColor color, bool continuously);

Type Changed: UIKit.IUIConfigurationState

Modified properties:

-public abstract UITraitCollection TraitCollection { get; set; }
+public virtual UITraitCollection TraitCollection { get; set; }

Modified methods:

-public abstract Foundation.NSObject GetCustomState (string key)
+public virtual Foundation.NSObject GetCustomState (string key)
-public abstract Foundation.NSObject GetObject (string key)
+public virtual Foundation.NSObject GetObject (string key)
-public abstract void SetCustomState (Foundation.NSObject customState, string key)
+public virtual void SetCustomState (Foundation.NSObject customState, string key)
-public abstract void SetObject (Foundation.NSObject obj, string key)
+public virtual void SetObject (Foundation.NSObject obj, string key)

Type Changed: UIKit.IUIContentConfiguration

Modified methods:

-public abstract IUIContentConfiguration GetUpdatedConfiguration (IUIConfigurationState state)
+public virtual IUIContentConfiguration GetUpdatedConfiguration (IUIConfigurationState state)
-public abstract IUIContentView MakeContentView ()
+public virtual IUIContentView MakeContentView ()

Type Changed: UIKit.IUIContentContainer

Modified properties:

-public abstract CoreGraphics.CGSize PreferredContentSize { get; }
+public virtual CoreGraphics.CGSize PreferredContentSize { get; }

Modified methods:

-public abstract CoreGraphics.CGSize GetSizeForChildContentContainer (IUIContentContainer contentContainer, CoreGraphics.CGSize parentContainerSize)
+public virtual CoreGraphics.CGSize GetSizeForChildContentContainer (IUIContentContainer contentContainer, CoreGraphics.CGSize parentContainerSize)
-public abstract void PreferredContentSizeDidChangeForChildContentContainer (IUIContentContainer container)
+public virtual void PreferredContentSizeDidChangeForChildContentContainer (IUIContentContainer container)
-public abstract void SystemLayoutFittingSizeDidChangeForChildContentContainer (IUIContentContainer container)
+public virtual void SystemLayoutFittingSizeDidChangeForChildContentContainer (IUIContentContainer container)
-public abstract void ViewWillTransitionToSize (CoreGraphics.CGSize toSize, IUIViewControllerTransitionCoordinator coordinator)
+public virtual void ViewWillTransitionToSize (CoreGraphics.CGSize toSize, IUIViewControllerTransitionCoordinator coordinator)
-public abstract void WillTransitionToTraitCollection (UITraitCollection traitCollection, IUIViewControllerTransitionCoordinator coordinator)
+public virtual void WillTransitionToTraitCollection (UITraitCollection traitCollection, IUIViewControllerTransitionCoordinator coordinator)

Type Changed: UIKit.IUIContentSizeCategoryAdjusting

Modified properties:

-public abstract bool AdjustsFontForContentSizeCategory { get; set; }
+public virtual bool AdjustsFontForContentSizeCategory { get; set; }

Type Changed: UIKit.IUIContentView

Modified properties:

-public abstract IUIContentConfiguration Configuration { get; set; }
+public virtual IUIContentConfiguration Configuration { get; set; }

Added method:

public virtual bool SupportsConfiguration (IUIContentConfiguration configuration);

Type Changed: UIKit.IUIContextMenuInteractionAnimating

Modified properties:

-public abstract UIViewController PreviewViewController { get; }
+public virtual UIViewController PreviewViewController { get; }

Modified methods:

-public abstract void AddAnimations (System.Action animations)
+public virtual void AddAnimations (System.Action animations)
-public abstract void AddCompletion (System.Action completion)
+public virtual void AddCompletion (System.Action completion)

Type Changed: UIKit.IUIContextMenuInteractionCommitAnimating

Modified properties:

-public abstract UIContextMenuInteractionCommitStyle PreferredCommitStyle { get; set; }
+public virtual UIContextMenuInteractionCommitStyle PreferredCommitStyle { get; set; }

Type Changed: UIKit.IUIContextMenuInteractionDelegate

Modified methods:

-public abstract UIContextMenuConfiguration GetConfigurationForMenu (UIContextMenuInteraction interaction, CoreGraphics.CGPoint location)
+public virtual UIContextMenuConfiguration GetConfigurationForMenu (UIContextMenuInteraction interaction, CoreGraphics.CGPoint location)

Added methods:

public virtual UITargetedPreview GetDismissalPreview (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, Foundation.INSCopying identifier);
public virtual UITargetedPreview GetHighlightPreview (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, Foundation.INSCopying identifier);
public virtual UITargetedPreview GetPreviewForDismissingMenu (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration);
public virtual UITargetedPreview GetPreviewForHighlightingMenu (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration);
public virtual void WillDisplayMenu (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillEnd (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillPerformPreviewAction (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, IUIContextMenuInteractionCommitAnimating animator);

Type Changed: UIKit.IUICoordinateSpace

Modified properties:

-public abstract CoreGraphics.CGRect Bounds { get; }
+public virtual CoreGraphics.CGRect Bounds { get; }

Modified methods:

-public abstract CoreGraphics.CGPoint ConvertPointFromCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace)
+public virtual CoreGraphics.CGPoint ConvertPointFromCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace)
-public abstract CoreGraphics.CGPoint ConvertPointToCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace)
+public virtual CoreGraphics.CGPoint ConvertPointToCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace)
-public abstract CoreGraphics.CGRect ConvertRectFromCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace)
+public virtual CoreGraphics.CGRect ConvertRectFromCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace)
-public abstract CoreGraphics.CGRect ConvertRectToCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace)
+public virtual CoreGraphics.CGRect ConvertRectToCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace)

Type Changed: UIKit.IUIDataSourceModelAssociation

Modified methods:

-public abstract Foundation.NSIndexPath GetIndexPath (string identifier, UIView view)
+public virtual Foundation.NSIndexPath GetIndexPath (string identifier, UIView view)
-public abstract string GetModelIdentifier (Foundation.NSIndexPath idx, UIView view)
+public virtual string GetModelIdentifier (Foundation.NSIndexPath idx, UIView view)

Type Changed: UIKit.IUIDataSourceTranslating

Modified methods:

-public abstract Foundation.NSIndexPath GetDataSourceIndexPath (Foundation.NSIndexPath presentationIndexPath)
+public virtual Foundation.NSIndexPath GetDataSourceIndexPath (Foundation.NSIndexPath presentationIndexPath)
-public abstract IntPtr GetDataSourceSectionIndex (IntPtr presentationSectionIndex)
+public virtual IntPtr GetDataSourceSectionIndex (IntPtr presentationSectionIndex)
-public abstract Foundation.NSIndexPath GetPresentationIndexPath (Foundation.NSIndexPath dataSourceIndexPath)
+public virtual Foundation.NSIndexPath GetPresentationIndexPath (Foundation.NSIndexPath dataSourceIndexPath)
-public abstract IntPtr GetPresentationSectionIndex (IntPtr dataSourceSectionIndex)
+public virtual IntPtr GetPresentationSectionIndex (IntPtr dataSourceSectionIndex)
-public abstract void PerformUsingPresentationValues (System.Action actionsToTranslate)
+public virtual void PerformUsingPresentationValues (System.Action actionsToTranslate)

Type Changed: UIKit.IUIDocumentBrowserViewControllerDelegate

Added methods:

public virtual void DidImportDocument (UIDocumentBrowserViewController controller, Foundation.NSUrl sourceUrl, Foundation.NSUrl destinationUrl);
public virtual void DidPickDocumentUrls (UIDocumentBrowserViewController controller, Foundation.NSUrl[] documentUrls);
public virtual void DidPickDocumentsAtUrls (UIDocumentBrowserViewController controller, Foundation.NSUrl[] documentUrls);
public virtual void DidRequestDocumentCreation (UIDocumentBrowserViewController controller, System.Action<Foundation.NSUrl,UIKit.UIDocumentBrowserImportMode> importHandler);
public virtual void FailedToImportDocument (UIDocumentBrowserViewController controller, Foundation.NSUrl documentUrl, Foundation.NSError error);
public virtual UIActivity[] GetApplicationActivities (UIDocumentBrowserViewController controller, Foundation.NSUrl[] documentUrls);
public virtual void WillPresent (UIDocumentBrowserViewController controller, UIActivityViewController activityViewController);

Type Changed: UIKit.IUIDocumentInteractionControllerDelegate

Added methods:

public virtual bool CanPerformAction (UIDocumentInteractionController controller, ObjCRuntime.Selector action);
public virtual void DidDismissOpenInMenu (UIDocumentInteractionController controller);
public virtual void DidDismissOptionsMenu (UIDocumentInteractionController controller);
public virtual void DidEndPreview (UIDocumentInteractionController controller);
public virtual void DidEndSendingToApplication (UIDocumentInteractionController controller, string application);
public virtual bool PerformAction (UIDocumentInteractionController controller, ObjCRuntime.Selector action);
public virtual CoreGraphics.CGRect RectangleForPreview (UIDocumentInteractionController controller);
public virtual UIViewController ViewControllerForPreview (UIDocumentInteractionController controller);
public virtual UIView ViewForPreview (UIDocumentInteractionController controller);
public virtual void WillBeginPreview (UIDocumentInteractionController controller);
public virtual void WillBeginSendingToApplication (UIDocumentInteractionController controller, string application);
public virtual void WillPresentOpenInMenu (UIDocumentInteractionController controller);
public virtual void WillPresentOptionsMenu (UIDocumentInteractionController controller);

Type Changed: UIKit.IUIDocumentMenuDelegate

Modified methods:

-public abstract void DidPickDocumentPicker (UIDocumentMenuViewController documentMenu, UIDocumentPickerViewController documentPicker)
+public virtual void DidPickDocumentPicker (UIDocumentMenuViewController documentMenu, UIDocumentPickerViewController documentPicker)

Added method:

public virtual void WasCancelled (UIDocumentMenuViewController documentMenu);

Type Changed: UIKit.IUIDocumentPickerDelegate

Added methods:

public virtual void DidPickDocument (UIDocumentPickerViewController controller, Foundation.NSUrl url);
public virtual void DidPickDocument (UIDocumentPickerViewController controller, Foundation.NSUrl[] urls);
public virtual void WasCancelled (UIDocumentPickerViewController controller);

Type Changed: UIKit.IUIDragAnimating

Modified methods:

-public abstract void AddAnimations (System.Action animations)
+public virtual void AddAnimations (System.Action animations)
-public abstract void AddCompletion (System.Action%LESSERTHANREPLACEMENT%UIViewAnimatingPosition%GREATERTHANREPLACEMENT% completion)
+public virtual void AddCompletion (System.Action%LESSERTHANREPLACEMENT%UIViewAnimatingPosition%GREATERTHANREPLACEMENT% completion)

Type Changed: UIKit.IUIDragDropSession

Modified properties:

-public abstract bool AllowsMoveOperation { get; }
+public virtual bool AllowsMoveOperation { get; }
-public abstract UIDragItem[] Items { get; }
+public virtual UIDragItem[] Items { get; }
-public abstract bool RestrictedToDraggingApplication { get; }
+public virtual bool RestrictedToDraggingApplication { get; }

Modified methods:

-public abstract bool CanLoadObjects (ObjCRuntime.Class itemProviderReadingClass)
+public virtual bool CanLoadObjects (ObjCRuntime.Class itemProviderReadingClass)
-public abstract bool HasConformingItems (string[] typeIdentifiers)
+public virtual bool HasConformingItems (string[] typeIdentifiers)
-public abstract CoreGraphics.CGPoint LocationInView (UIView view)
+public virtual CoreGraphics.CGPoint LocationInView (UIView view)

Type Changed: UIKit.IUIDragInteractionDelegate

Modified methods:

-public abstract UIDragItem[] GetItemsForBeginningSession (UIDragInteraction interaction, IUIDragSession session)
+public virtual UIDragItem[] GetItemsForBeginningSession (UIDragInteraction interaction, IUIDragSession session)

Added methods:

public virtual UIDragItem[] GetItemsForAddingToSession (UIDragInteraction interaction, IUIDragSession session, CoreGraphics.CGPoint point);
public virtual UITargetedDragPreview GetPreviewForCancellingItem (UIDragInteraction interaction, UIDragItem item, UITargetedDragPreview defaultPreview);
public virtual UITargetedDragPreview GetPreviewForLiftingItem (UIDragInteraction interaction, UIDragItem item, IUIDragSession session);
public virtual IUIDragSession GetSessionForAddingItems (UIDragInteraction interaction, IUIDragSession[] sessions, CoreGraphics.CGPoint point);
public virtual bool PrefersFullSizePreviews (UIDragInteraction interaction, IUIDragSession session);
public virtual bool SessionAllowsMoveOperation (UIDragInteraction interaction, IUIDragSession session);
public virtual void SessionDidEnd (UIDragInteraction interaction, IUIDragSession session, UIDropOperation operation);
public virtual void SessionDidMove (UIDragInteraction interaction, IUIDragSession session);
public virtual void SessionDidTransferItems (UIDragInteraction interaction, IUIDragSession session);
public virtual bool SessionIsRestrictedToDraggingApplication (UIDragInteraction interaction, IUIDragSession session);
public virtual void SessionWillBegin (UIDragInteraction interaction, IUIDragSession session);
public virtual void SessionWillEnd (UIDragInteraction interaction, IUIDragSession session, UIDropOperation operation);
public virtual void WillAddItems (UIDragInteraction interaction, IUIDragSession session, UIDragItem[] items, UIDragInteraction addingInteraction);
public virtual void WillAnimateCancel (UIDragInteraction interaction, UIDragItem item, IUIDragAnimating animator);
public virtual void WillAnimateLift (UIDragInteraction interaction, IUIDragAnimating animator, IUIDragSession session);

Type Changed: UIKit.IUIDragSession

Modified properties:

-public abstract Foundation.NSObject LocalContext { get; set; }
+public virtual Foundation.NSObject LocalContext { get; set; }

Type Changed: UIKit.IUIDropInteractionDelegate

Added methods:

public virtual bool CanHandleSession (UIDropInteraction interaction, IUIDropSession session);
public virtual void ConcludeDrop (UIDropInteraction interaction, IUIDropSession session);
public virtual UITargetedDragPreview GetPreviewForDroppingItem (UIDropInteraction interaction, UIDragItem item, UITargetedDragPreview defaultPreview);
public virtual void PerformDrop (UIDropInteraction interaction, IUIDropSession session);
public virtual void SessionDidEnd (UIDropInteraction interaction, IUIDropSession session);
public virtual void SessionDidEnter (UIDropInteraction interaction, IUIDropSession session);
public virtual void SessionDidExit (UIDropInteraction interaction, IUIDropSession session);
public virtual UIDropProposal SessionDidUpdate (UIDropInteraction interaction, IUIDropSession session);
public virtual void WillAnimateDrop (UIDropInteraction interaction, UIDragItem item, IUIDragAnimating animator);

Type Changed: UIKit.IUIDropSession

Modified properties:

-public abstract IUIDragSession LocalDragSession { get; }
+public virtual IUIDragSession LocalDragSession { get; }
-public abstract UIDropSessionProgressIndicatorStyle ProgressIndicatorStyle { get; set; }
+public virtual UIDropSessionProgressIndicatorStyle ProgressIndicatorStyle { get; set; }

Modified methods:

-public abstract Foundation.NSProgress LoadObjects (ObjCRuntime.Class itemProviderReadingClass, System.Action%LESSERTHANREPLACEMENT%Foundation.INSItemProviderReading[]%GREATERTHANREPLACEMENT% completion)
+public virtual Foundation.NSProgress LoadObjects (ObjCRuntime.Class itemProviderReadingClass, System.Action%LESSERTHANREPLACEMENT%Foundation.INSItemProviderReading[]%GREATERTHANREPLACEMENT% completion)

Type Changed: UIKit.IUIDynamicAnimatorDelegate

Added methods:

public virtual void DidPause (UIDynamicAnimator animator);
public virtual void WillResume (UIDynamicAnimator animator);

Type Changed: UIKit.IUIDynamicItem

Modified properties:

-public abstract CoreGraphics.CGRect Bounds { get; }
+public virtual CoreGraphics.CGRect Bounds { get; }
-public abstract CoreGraphics.CGPoint Center { get; set; }
+public virtual CoreGraphics.CGPoint Center { get; set; }
-public abstract CoreGraphics.CGAffineTransform Transform { get; set; }
+public virtual CoreGraphics.CGAffineTransform Transform { get; set; }

Added properties:

public virtual UIBezierPath CollisionBoundingPath { get; }
public virtual UIDynamicItemCollisionBoundsType CollisionBoundsType { get; }

Type Changed: UIKit.IUIEditMenuInteractionAnimating

Modified methods:

-public abstract void AddAnimations (System.Action animations)
+public virtual void AddAnimations (System.Action animations)
-public abstract void AddCompletion (System.Action completion)
+public virtual void AddCompletion (System.Action completion)

Type Changed: UIKit.IUIEditMenuInteractionDelegate

Added methods:

public virtual UIMenu GetMenu (UIEditMenuInteraction interaction, UIEditMenuConfiguration configuration, UIMenuElement[] suggestedActions);
public virtual CoreGraphics.CGRect GetTargetRect (UIEditMenuInteraction interaction, UIEditMenuConfiguration configuration);
public virtual void WillDismissMenu (UIEditMenuInteraction interaction, UIEditMenuConfiguration configuration, IUIEditMenuInteractionAnimating animator);
public virtual void WillPresentMenu (UIEditMenuInteraction interaction, UIEditMenuConfiguration configuration, IUIEditMenuInteractionAnimating animator);

Type Changed: UIKit.IUIFindInteractionDelegate

Modified methods:

-public abstract UIFindSession GetSession (UIFindInteraction interaction, UIView view)
+public virtual UIFindSession GetSession (UIFindInteraction interaction, UIView view)

Added methods:

public virtual void DidBeginFindSession (UIFindInteraction interaction, UIFindSession session);
public virtual void DidEndFindSession (UIFindInteraction interaction, UIFindSession session);

Type Changed: UIKit.IUIFocusAnimationContext

Modified properties:

-public abstract double Duration { get; }
+public virtual double Duration { get; }

Type Changed: UIKit.IUIFocusEnvironment

Modified properties:

-public abstract IUIFocusItemContainer FocusItemContainer { get; }
+public virtual IUIFocusItemContainer FocusItemContainer { get; }
-public abstract IUIFocusEnvironment ParentFocusEnvironment { get; }
+public virtual IUIFocusEnvironment ParentFocusEnvironment { get; }
-public abstract IUIFocusEnvironment[] PreferredFocusEnvironments { get; }
+public virtual IUIFocusEnvironment[] PreferredFocusEnvironments { get; }

Added properties:

public virtual string FocusGroupIdentifier { get; }
public virtual UIView PreferredFocusedView { get; }

Modified methods:

-public abstract void DidUpdateFocus (UIFocusUpdateContext context, UIFocusAnimationCoordinator coordinator)
+public virtual void DidUpdateFocus (UIFocusUpdateContext context, UIFocusAnimationCoordinator coordinator)
-public abstract void SetNeedsFocusUpdate ()
+public virtual void SetNeedsFocusUpdate ()
-public abstract bool ShouldUpdateFocus (UIFocusUpdateContext context)
+public virtual bool ShouldUpdateFocus (UIFocusUpdateContext context)
-public abstract void UpdateFocusIfNeeded ()
+public virtual void UpdateFocusIfNeeded ()

Type Changed: UIKit.IUIFocusItem

Modified properties:

-public abstract bool CanBecomeFocused { get; }
+public virtual bool CanBecomeFocused { get; }
-public abstract CoreGraphics.CGRect Frame { get; }
+public virtual CoreGraphics.CGRect Frame { get; }

Added properties:

public virtual UIFocusEffect FocusEffect { get; }
public virtual UIFocusGroupPriority FocusGroupPriority { get; }
public virtual bool IsTransparentFocusItem { get; }

Added method:

public virtual void DidHintFocusMovement (UIFocusMovementHint hint);

Type Changed: UIKit.IUIFocusItemContainer

Modified properties:

-public abstract IUICoordinateSpace CoordinateSpace { get; }
+public virtual IUICoordinateSpace CoordinateSpace { get; }

Modified methods:

-public abstract IUIFocusItem[] GetFocusItems (CoreGraphics.CGRect rect)
+public virtual IUIFocusItem[] GetFocusItems (CoreGraphics.CGRect rect)

Type Changed: UIKit.IUIFocusItemScrollableContainer

Modified properties:

-public abstract CoreGraphics.CGPoint ContentOffset { get; set; }
+public virtual CoreGraphics.CGPoint ContentOffset { get; set; }
-public abstract CoreGraphics.CGSize ContentSize { get; }
+public virtual CoreGraphics.CGSize ContentSize { get; }
-public abstract CoreGraphics.CGSize VisibleSize { get; }
+public virtual CoreGraphics.CGSize VisibleSize { get; }

Type Changed: UIKit.IUIFontPickerViewControllerDelegate

Added methods:

public virtual void DidCancel (UIFontPickerViewController viewController);
public virtual void DidPickFont (UIFontPickerViewController viewController);

Type Changed: UIKit.IUIGestureRecognizerDelegate

Added methods:

public virtual bool ShouldBeRequiredToFailBy (UIGestureRecognizer gestureRecognizer, UIGestureRecognizer otherGestureRecognizer);
public virtual bool ShouldBegin (UIGestureRecognizer recognizer);
public virtual bool ShouldReceiveEvent (UIGestureRecognizer gestureRecognizer, UIEvent event);
public virtual bool ShouldReceivePress (UIGestureRecognizer gestureRecognizer, UIPress press);
public virtual bool ShouldReceiveTouch (UIGestureRecognizer recognizer, UITouch touch);
public virtual bool ShouldRecognizeSimultaneously (UIGestureRecognizer gestureRecognizer, UIGestureRecognizer otherGestureRecognizer);
public virtual bool ShouldRequireFailureOf (UIGestureRecognizer gestureRecognizer, UIGestureRecognizer otherGestureRecognizer);

Type Changed: UIKit.IUIGuidedAccessRestrictionDelegate

Modified properties:

-public abstract string[] GetGuidedAccessRestrictionIdentifiers { get; }
+public virtual string[] GetGuidedAccessRestrictionIdentifiers { get; }

Modified methods:

-public abstract string GetTextForGuidedAccessRestriction (string restrictionIdentifier)
+public virtual string GetTextForGuidedAccessRestriction (string restrictionIdentifier)
-public abstract void GuidedAccessRestrictionChangedState (string restrictionIdentifier, UIGuidedAccessRestrictionState newRestrictionState)
+public virtual void GuidedAccessRestrictionChangedState (string restrictionIdentifier, UIGuidedAccessRestrictionState newRestrictionState)

Added method:

public virtual string GetDetailTextForGuidedAccessRestriction (string restrictionIdentifier);

Type Changed: UIKit.IUIImagePickerControllerDelegate

Added methods:

public virtual void Canceled (UIImagePickerController picker);
public virtual void FinishedPickingMedia (UIImagePickerController picker, Foundation.NSDictionary info);

Type Changed: UIKit.IUIIndirectScribbleInteractionDelegate

Modified methods:

-public abstract void FocusElementIfNeeded (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier, CoreGraphics.CGPoint focusReferencePoint, System.Action%LESSERTHANREPLACEMENT%IUITextInput%GREATERTHANREPLACEMENT% completion)
+public virtual void FocusElementIfNeeded (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier, CoreGraphics.CGPoint focusReferencePoint, System.Action%LESSERTHANREPLACEMENT%IUITextInput%GREATERTHANREPLACEMENT% completion)
-public abstract CoreGraphics.CGRect GetFrameForElement (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier)
+public virtual CoreGraphics.CGRect GetFrameForElement (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier)
-public abstract bool IsElementFocused (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier)
+public virtual bool IsElementFocused (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier)
-public abstract void RequestElements (UIIndirectScribbleInteraction interaction, CoreGraphics.CGRect rect, System.Action%LESSERTHANREPLACEMENT%Foundation.NSObject[]%GREATERTHANREPLACEMENT% completion)
+public virtual void RequestElements (UIIndirectScribbleInteraction interaction, CoreGraphics.CGRect rect, System.Action%LESSERTHANREPLACEMENT%Foundation.NSObject[]%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void DidFinishWriting (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier);
public virtual bool ShouldDelayFocus (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier);
public virtual void WillBeginWriting (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier);

Type Changed: UIKit.IUIInputViewAudioFeedback

Added property:

public virtual bool EnableInputClicksWhenVisible { get; }

Type Changed: UIKit.IUIInteraction

Modified properties:

-public abstract UIView View { get; }
+public virtual UIView View { get; }

Modified methods:

-public abstract void DidMoveToView (UIView view)
+public virtual void DidMoveToView (UIView view)
-public abstract void WillMoveToView (UIView view)
+public virtual void WillMoveToView (UIView view)

Type Changed: UIKit.IUIItemProviderPresentationSizeProviding

Modified properties:

-public abstract CoreGraphics.CGSize PreferredPresentationSizeForItemProvider { get; }
+public virtual CoreGraphics.CGSize PreferredPresentationSizeForItemProvider { get; }

Type Changed: UIKit.IUIKeyInput

Modified properties:

-public abstract bool HasText { get; }
+public virtual bool HasText { get; }

Modified methods:

-public abstract void DeleteBackward ()
+public virtual void DeleteBackward ()
-public abstract void InsertText (string text)
+public virtual void InsertText (string text)

Type Changed: UIKit.IUILargeContentViewerInteractionDelegate

Added methods:

public virtual void DidEnd (UILargeContentViewerInteraction interaction, IUILargeContentViewerItem item, CoreGraphics.CGPoint point);
public virtual IUILargeContentViewerItem GetItem (UILargeContentViewerInteraction interaction, CoreGraphics.CGPoint point);
public virtual UIViewController GetViewController (UILargeContentViewerInteraction interaction);

Type Changed: UIKit.IUILargeContentViewerItem

Modified properties:

-public abstract UIImage LargeContentImage { get; }
+public virtual UIImage LargeContentImage { get; }
-public abstract UIEdgeInsets LargeContentImageInsets { get; }
+public virtual UIEdgeInsets LargeContentImageInsets { get; }
-public abstract string LargeContentTitle { get; }
+public virtual string LargeContentTitle { get; }
-public abstract bool ScalesLargeContentImage { get; }
+public virtual bool ScalesLargeContentImage { get; }
-public abstract bool ShowsLargeContentViewer { get; }
+public virtual bool ShowsLargeContentViewer { get; }

Type Changed: UIKit.IUILayoutGuideAspectFitting

Modified properties:

-public abstract System.Runtime.InteropServices.NFloat AspectRatio { get; set; }
+public virtual System.Runtime.InteropServices.NFloat AspectRatio { get; set; }

Type Changed: UIKit.IUILayoutSupport

Modified properties:

-public abstract NSLayoutYAxisAnchor BottomAnchor { get; }
+public virtual NSLayoutYAxisAnchor BottomAnchor { get; }
-public abstract NSLayoutDimension HeightAnchor { get; }
+public virtual NSLayoutDimension HeightAnchor { get; }
-public abstract System.Runtime.InteropServices.NFloat Length { get; }
+public virtual System.Runtime.InteropServices.NFloat Length { get; }
-public abstract NSLayoutYAxisAnchor TopAnchor { get; }
+public virtual NSLayoutYAxisAnchor TopAnchor { get; }

Type Changed: UIKit.IUILetterformAwareAdjusting

Modified properties:

-public abstract UILetterformAwareSizingRule SizingRule { get; set; }
+public virtual UILetterformAwareSizingRule SizingRule { get; set; }

Type Changed: UIKit.IUILookToDictateCapable

Modified properties:

-public abstract bool LookToDictateEnabled { get; set; }
+public virtual bool LookToDictateEnabled { get; set; }

Type Changed: UIKit.IUIMenuBuilder

Modified properties:

-public abstract UIMenuSystem System { get; }
+public virtual UIMenuSystem System { get; }

Modified methods:

-public abstract UIAction GetAction (string identifier)
+public virtual UIAction GetAction (string identifier)
-public abstract UICommand GetCommand (ObjCRuntime.Selector action, Foundation.NSObject propertyList)
+public virtual UICommand GetCommand (ObjCRuntime.Selector action, Foundation.NSObject propertyList)
-public abstract UIMenu GetMenu (string identifier)
+public virtual UIMenu GetMenu (string identifier)
-public abstract void InsertChildMenuAtEnd (UIMenu childMenu, string parentIdentifier)
+public virtual void InsertChildMenuAtEnd (UIMenu childMenu, string parentIdentifier)
-public abstract void InsertChildMenuAtStart (UIMenu childMenu, string parentIdentifier)
+public virtual void InsertChildMenuAtStart (UIMenu childMenu, string parentIdentifier)
-public abstract void InsertSiblingMenuAfter (UIMenu siblingMenu, string siblingIdentifier)
+public virtual void InsertSiblingMenuAfter (UIMenu siblingMenu, string siblingIdentifier)
-public abstract void InsertSiblingMenuBefore (UIMenu siblingMenu, string siblingIdentifier)
+public virtual void InsertSiblingMenuBefore (UIMenu siblingMenu, string siblingIdentifier)
-public abstract void RemoveMenu (string removedIdentifier)
+public virtual void RemoveMenu (string removedIdentifier)
-public abstract void ReplaceChildrenOfMenu (string parentIdentifier, System.Func%LESSERTHANREPLACEMENT%UIMenuElement[],UIKit.UIMenuElement[]%GREATERTHANREPLACEMENT% childrenBlock)
+public virtual void ReplaceChildrenOfMenu (string parentIdentifier, System.Func%LESSERTHANREPLACEMENT%UIMenuElement[],UIKit.UIMenuElement[]%GREATERTHANREPLACEMENT% childrenBlock)
-public abstract void ReplaceMenu (string replacedIdentifier, UIMenu replacementMenu)
+public virtual void ReplaceMenu (string replacedIdentifier, UIMenu replacementMenu)

Type Changed: UIKit.IUIMenuLeaf

Modified properties:

-public abstract UIMenuElementAttributes Attributes { get; set; }
+public virtual UIMenuElementAttributes Attributes { get; set; }
-public abstract string DiscoverabilityTitle { get; set; }
+public virtual string DiscoverabilityTitle { get; set; }
-public abstract UIImage Image { get; set; }
+public virtual UIImage Image { get; set; }
-public abstract IUIPopoverPresentationControllerSourceItem PresentationSourceItem { get; }
+public virtual IUIPopoverPresentationControllerSourceItem PresentationSourceItem { get; }
-public abstract Foundation.NSObject Sender { get; }
+public virtual Foundation.NSObject Sender { get; }
-public abstract UIMenuElementState State { get; set; }
+public virtual UIMenuElementState State { get; set; }
-public abstract string Title { get; set; }
+public virtual string Title { get; set; }

Added property:

public virtual UIImage SelectedImage { get; set; }

Modified methods:

-public abstract void Target (Foundation.NSObject sender, Foundation.NSObject target)
+public virtual void Target (Foundation.NSObject sender, Foundation.NSObject target)

Type Changed: UIKit.IUIMutableTraits

Modified properties:

-public abstract UIAccessibilityContrast AccessibilityContrast { get; set; }
+public virtual UIAccessibilityContrast AccessibilityContrast { get; set; }
-public abstract UIUserInterfaceActiveAppearance ActiveAppearance { get; set; }
+public virtual UIUserInterfaceActiveAppearance ActiveAppearance { get; set; }
-public abstract UIDisplayGamut DisplayGamut { get; set; }
+public virtual UIDisplayGamut DisplayGamut { get; set; }
-public abstract System.Runtime.InteropServices.NFloat DisplayScale { get; set; }
+public virtual System.Runtime.InteropServices.NFloat DisplayScale { get; set; }
-public abstract UIForceTouchCapability ForceTouchCapability { get; set; }
+public virtual UIForceTouchCapability ForceTouchCapability { get; set; }
-public abstract UIUserInterfaceSizeClass HorizontalSizeClass { get; set; }
+public virtual UIUserInterfaceSizeClass HorizontalSizeClass { get; set; }
-public abstract UIImageDynamicRange ImageDynamicRange { get; set; }
+public virtual UIImageDynamicRange ImageDynamicRange { get; set; }
-public abstract UITraitEnvironmentLayoutDirection LayoutDirection { get; set; }
+public virtual UITraitEnvironmentLayoutDirection LayoutDirection { get; set; }
-public abstract UILegibilityWeight LegibilityWeight { get; set; }
+public virtual UILegibilityWeight LegibilityWeight { get; set; }
-public abstract string PreferredContentSizeCategory { get; set; }
+public virtual string PreferredContentSizeCategory { get; set; }
-public abstract UISceneCaptureState SceneCaptureState { get; set; }
+public virtual UISceneCaptureState SceneCaptureState { get; set; }
-public abstract UINSToolbarItemPresentationSize ToolbarItemPresentationSize { get; set; }
+public virtual UINSToolbarItemPresentationSize ToolbarItemPresentationSize { get; set; }
-public abstract string TypesettingLanguage { get; set; }
+public virtual string TypesettingLanguage { get; set; }
-public abstract UIUserInterfaceIdiom UserInterfaceIdiom { get; set; }
+public virtual UIUserInterfaceIdiom UserInterfaceIdiom { get; set; }
-public abstract UIUserInterfaceLevel UserInterfaceLevel { get; set; }
+public virtual UIUserInterfaceLevel UserInterfaceLevel { get; set; }
-public abstract UIUserInterfaceStyle UserInterfaceStyle { get; set; }
+public virtual UIUserInterfaceStyle UserInterfaceStyle { get; set; }
-public abstract UIUserInterfaceSizeClass VerticalSizeClass { get; set; }
+public virtual UIUserInterfaceSizeClass VerticalSizeClass { get; set; }

Modified methods:

-public abstract Foundation.NSObject GetObject (IUIObjectTraitDefinition trait)
+public virtual Foundation.NSObject GetObject (IUIObjectTraitDefinition trait)
-public abstract System.Runtime.InteropServices.NFloat GetValue (IUICGFloatTraitDefinition trait)
+public virtual System.Runtime.InteropServices.NFloat GetValue (IUICGFloatTraitDefinition trait)
-public abstract IntPtr GetValue (IUINSIntegerTraitDefinition trait)
+public virtual IntPtr GetValue (IUINSIntegerTraitDefinition trait)
-public abstract void SetObject (Foundation.NSObject object, IUIObjectTraitDefinition trait)
+public virtual void SetObject (Foundation.NSObject object, IUIObjectTraitDefinition trait)
-public abstract void SetValue (IntPtr value, IUINSIntegerTraitDefinition trait)
+public virtual void SetValue (IntPtr value, IUINSIntegerTraitDefinition trait)
-public abstract void SetValue (System.Runtime.InteropServices.NFloat value, IUICGFloatTraitDefinition trait)
+public virtual void SetValue (System.Runtime.InteropServices.NFloat value, IUICGFloatTraitDefinition trait)

Type Changed: UIKit.IUINSIntegerTraitDefinition

Added method:

public static IntPtr GetDefaultValue<T> ();

Type Changed: UIKit.IUINavigationBarDelegate

Added methods:

public virtual void DidPopItem (UINavigationBar navigationBar, UINavigationItem item);
public virtual void DidPushItem (UINavigationBar navigationBar, UINavigationItem item);
public virtual UINavigationBarNSToolbarSection GetNSToolbarSection (UINavigationBar navigationBar);
public virtual bool ShouldPopItem (UINavigationBar navigationBar, UINavigationItem item);
public virtual bool ShouldPushItem (UINavigationBar navigationBar, UINavigationItem item);

Type Changed: UIKit.IUINavigationControllerDelegate

Added methods:

public virtual void DidShowViewController (UINavigationController navigationController, UIViewController viewController, bool animated);
public virtual IUIViewControllerAnimatedTransitioning GetAnimationControllerForOperation (UINavigationController navigationController, UINavigationControllerOperation operation, UIViewController fromViewController, UIViewController toViewController);
public virtual IUIViewControllerInteractiveTransitioning GetInteractionControllerForAnimationController (UINavigationController navigationController, IUIViewControllerAnimatedTransitioning animationController);
public virtual UIInterfaceOrientation GetPreferredInterfaceOrientation (UINavigationController navigationController);
public virtual UIInterfaceOrientationMask SupportedInterfaceOrientations (UINavigationController navigationController);
public virtual void WillShowViewController (UINavigationController navigationController, UIViewController viewController, bool animated);

Type Changed: UIKit.IUINavigationItemRenameDelegate

Modified methods:

-public abstract void DidEndRenaming (UINavigationItem navigationItem, string title)
+public virtual void DidEndRenaming (UINavigationItem navigationItem, string title)

Added methods:

public virtual bool ShouldBeginRenaming (UINavigationItem navigationItem);
public virtual bool ShouldEndRenaming (UINavigationItem navigationItem, string title);
public virtual string WillBeginRenaming (UINavigationItem navigationItem, string title, Foundation.NSRange selectedRange);

Type Changed: UIKit.IUIObjectTraitDefinition

Added method:

public static Foundation.NSObject GetDefaultValue<T> ();

Type Changed: UIKit.IUIPageControlProgressDelegate

Added methods:

public virtual float GetInitialProgressForPage (UIPageControlProgress progress, IntPtr page);
public virtual void VisibilityDidChange (UIPageControlProgress progress);

Type Changed: UIKit.IUIPageControlTimerProgressDelegate

Added methods:

public virtual void PageControlTimerProgressDidChange (UIPageControlTimerProgress progress);
public virtual bool ShouldAdvanceToPage (UIPageControlTimerProgress progress, IntPtr page);

Type Changed: UIKit.IUIPageViewControllerDataSource

Modified methods:

-public abstract UIViewController GetNextViewController (UIPageViewController pageViewController, UIViewController referenceViewController)
+public virtual UIViewController GetNextViewController (UIPageViewController pageViewController, UIViewController referenceViewController)
-public abstract UIViewController GetPreviousViewController (UIPageViewController pageViewController, UIViewController referenceViewController)
+public virtual UIViewController GetPreviousViewController (UIPageViewController pageViewController, UIViewController referenceViewController)

Added methods:

public virtual IntPtr GetPresentationCount (UIPageViewController pageViewController);
public virtual IntPtr GetPresentationIndex (UIPageViewController pageViewController);

Type Changed: UIKit.IUIPageViewControllerDelegate

Added methods:

public virtual void DidFinishAnimating (UIPageViewController pageViewController, bool finished, UIViewController[] previousViewControllers, bool completed);
public virtual UIInterfaceOrientation GetPreferredInterfaceOrientationForPresentation (UIPageViewController pageViewController);
public virtual UIPageViewControllerSpineLocation GetSpineLocation (UIPageViewController pageViewController, UIInterfaceOrientation orientation);
public virtual UIInterfaceOrientationMask SupportedInterfaceOrientations (UIPageViewController pageViewController);
public virtual void WillTransition (UIPageViewController pageViewController, UIViewController[] pendingViewControllers);

Type Changed: UIKit.IUIPasteConfigurationSupporting

Modified properties:

-public abstract UIPasteConfiguration PasteConfiguration { get; set; }
+public virtual UIPasteConfiguration PasteConfiguration { get; set; }

Added methods:

public virtual bool CanPaste (Foundation.NSItemProvider[] itemProviders);
public virtual void Paste (Foundation.NSItemProvider[] itemProviders);

Type Changed: UIKit.IUIPencilInteractionDelegate

Added methods:

public virtual void DidReceiveSqueeze (UIPencilInteraction interaction, UIPencilInteractionSqueeze squeeze);
public virtual void DidReceiveTap (UIPencilInteraction interaction, UIPencilInteractionTap tap);
public virtual void DidTap (UIPencilInteraction interaction);

Type Changed: UIKit.IUIPickerViewAccessibilityDelegate

Added methods:

public virtual Foundation.NSAttributedString GetAccessibilityAttributedHint (UIPickerView pickerView, IntPtr component);
public virtual Foundation.NSAttributedString GetAccessibilityAttributedLabel (UIPickerView pickerView, IntPtr component);
public virtual Foundation.NSAttributedString[] GetAccessibilityAttributedUserInputLabels (UIPickerView pickerView, IntPtr component);
public virtual string GetAccessibilityHint (UIPickerView pickerView, IntPtr component);
public virtual string GetAccessibilityLabel (UIPickerView pickerView, IntPtr acessibilityLabelForComponent);
public virtual string[] GetAccessibilityUserInputLabels (UIPickerView pickerView, IntPtr component);

Type Changed: UIKit.IUIPickerViewDataSource

Modified methods:

-public abstract IntPtr GetComponentCount (UIPickerView pickerView)
+public virtual IntPtr GetComponentCount (UIPickerView pickerView)
-public abstract IntPtr GetRowsInComponent (UIPickerView pickerView, IntPtr component)
+public virtual IntPtr GetRowsInComponent (UIPickerView pickerView, IntPtr component)

Type Changed: UIKit.IUIPickerViewDelegate

Added methods:

public virtual Foundation.NSAttributedString GetAttributedTitle (UIPickerView pickerView, IntPtr row, IntPtr component);
public virtual System.Runtime.InteropServices.NFloat GetComponentWidth (UIPickerView pickerView, IntPtr component);
public virtual System.Runtime.InteropServices.NFloat GetRowHeight (UIPickerView pickerView, IntPtr component);
public virtual string GetTitle (UIPickerView pickerView, IntPtr row, IntPtr component);
public virtual UIView GetView (UIPickerView pickerView, IntPtr row, IntPtr component, UIView view);
public virtual void Selected (UIPickerView pickerView, IntPtr row, IntPtr component);

Type Changed: UIKit.IUIPointerInteractionAnimating

Modified methods:

-public abstract void AddAnimations (System.Action animations)
+public virtual void AddAnimations (System.Action animations)
-public abstract void AddCompletion (System.Action%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% completion)
+public virtual void AddCompletion (System.Action%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% completion)

Type Changed: UIKit.IUIPointerInteractionDelegate

Added methods:

public virtual UIPointerRegion GetRegionForRequest (UIPointerInteraction interaction, UIPointerRegionRequest request, UIPointerRegion defaultRegion);
public virtual UIPointerStyle GetStyleForRegion (UIPointerInteraction interaction, UIPointerRegion region);
public virtual void WillEnterRegion (UIPointerInteraction interaction, UIPointerRegion region, IUIPointerInteractionAnimating animator);
public virtual void WillExitRegion (UIPointerInteraction interaction, UIPointerRegion region, IUIPointerInteractionAnimating animator);

Type Changed: UIKit.IUIPopoverBackgroundViewMethods

Added methods:

public static System.Runtime.InteropServices.NFloat GetArrowBase<T> ();
public static System.Runtime.InteropServices.NFloat GetArrowHeight<T> ();
public static UIEdgeInsets GetContentViewInsets<T> ();

Type Changed: UIKit.IUIPopoverControllerDelegate

Added methods:

public virtual void DidDismiss (UIPopoverController popoverController);
public virtual bool ShouldDismiss (UIPopoverController popoverController);
public virtual void WillReposition (UIPopoverController popoverController, ref CoreGraphics.CGRect rect, ref UIView view);

Type Changed: UIKit.IUIPopoverPresentationControllerDelegate

Added methods:

public virtual void DidDismissPopover (UIPopoverPresentationController popoverPresentationController);
public virtual void PrepareForPopoverPresentation (UIPopoverPresentationController popoverPresentationController);
public virtual bool ShouldDismissPopover (UIPopoverPresentationController popoverPresentationController);
public virtual void WillRepositionPopover (UIPopoverPresentationController popoverPresentationController, ref CoreGraphics.CGRect targetRect, ref UIView inView);

Type Changed: UIKit.IUIPopoverPresentationControllerSourceItem

Added method:

public virtual CoreGraphics.CGRect GetFrame (UIView referenceView);

Type Changed: UIKit.IUIPreviewActionItem

Modified properties:

-public abstract string Title { get; }
+public virtual string Title { get; }

Type Changed: UIKit.IUIPreviewInteractionDelegate

Modified methods:

-public abstract void DidCancel (UIPreviewInteraction previewInteraction)
+public virtual void DidCancel (UIPreviewInteraction previewInteraction)
-public abstract void DidUpdatePreviewTransition (UIPreviewInteraction previewInteraction, System.Runtime.InteropServices.NFloat transitionProgress, bool ended)
+public virtual void DidUpdatePreviewTransition (UIPreviewInteraction previewInteraction, System.Runtime.InteropServices.NFloat transitionProgress, bool ended)

Added methods:

public virtual void DidUpdateCommit (UIPreviewInteraction previewInteraction, System.Runtime.InteropServices.NFloat transitionProgress, bool ended);
public virtual bool ShouldBegin (UIPreviewInteraction previewInteraction);

Type Changed: UIKit.IUIPrintInteractionControllerDelegate

Added methods:

public virtual UIPrinterCutterBehavior ChooseCutterBehavior (UIPrintInteractionController printInteractionController, Foundation.NSNumber[] availableBehaviors);
public virtual UIPrintPaper ChoosePaper (UIPrintInteractionController printInteractionController, UIPrintPaper[] paperList);
public virtual System.Runtime.InteropServices.NFloat CutLengthForPaper (UIPrintInteractionController printInteractionController, UIPrintPaper paper);
public virtual void DidDismissPrinterOptions (UIPrintInteractionController printInteractionController);
public virtual void DidFinishJob (UIPrintInteractionController printInteractionController);
public virtual void DidPresentPrinterOptions (UIPrintInteractionController printInteractionController);
public virtual UIViewController GetViewController (UIPrintInteractionController printInteractionController);
public virtual void WillDismissPrinterOptions (UIPrintInteractionController printInteractionController);
public virtual void WillPresentPrinterOptions (UIPrintInteractionController printInteractionController);
public virtual void WillStartJob (UIPrintInteractionController printInteractionController);

Type Changed: UIKit.IUIPrinterPickerControllerDelegate

Added methods:

public virtual void DidDismiss (UIPrinterPickerController printerPickerController);
public virtual void DidPresent (UIPrinterPickerController printerPickerController);
public virtual void DidSelectPrinter (UIPrinterPickerController printerPickerController);
public virtual UIViewController GetParentViewController (UIPrinterPickerController printerPickerController);
public virtual bool ShouldShowPrinter (UIPrinterPickerController printerPickerController, UIPrinter printer);
public virtual void WillDismiss (UIPrinterPickerController printerPickerController);
public virtual void WillPresent (UIPrinterPickerController printerPickerController);

Type Changed: UIKit.IUIResponderStandardEditActions

Added methods:

public virtual void Copy (Foundation.NSObject sender);
public virtual void Cut (Foundation.NSObject sender);
public virtual void DecreaseSize (Foundation.NSObject sender);
public virtual void Delete (Foundation.NSObject sender);
public virtual void Duplicate (Foundation.NSObject sender);
public virtual void Export (Foundation.NSObject sender);
public virtual void Find (Foundation.NSObject sender);
public virtual void FindAndReplace (Foundation.NSObject sender);
public virtual void FindNext (Foundation.NSObject sender);
public virtual void FindPrevious (Foundation.NSObject sender);
public virtual void IncreaseSize (Foundation.NSObject sender);
public virtual void MakeTextWritingDirectionLeftToRight (Foundation.NSObject sender);
public virtual void MakeTextWritingDirectionRightToLeft (Foundation.NSObject sender);
public virtual void Move (Foundation.NSObject sender);
public virtual void Paste (Foundation.NSObject sender);
public virtual void PasteAndGo (Foundation.NSObject sender);
public virtual void PasteAndMatchStyle (Foundation.NSObject sender);
public virtual void PasteAndSearch (Foundation.NSObject sender);
public virtual void Print (Foundation.NSObject sender);
public virtual void Rename (Foundation.NSObject sender);
public virtual void Select (Foundation.NSObject sender);
public virtual void SelectAll (Foundation.NSObject sender);
public virtual void ToggleBoldface (Foundation.NSObject sender);
public virtual void ToggleItalics (Foundation.NSObject sender);
public virtual void ToggleUnderline (Foundation.NSObject sender);
public virtual void UpdateTextAttributes (UITextAttributesConversionHandler conversionHandler);
public virtual void UseSelectionForFind (Foundation.NSObject sender);

Type Changed: UIKit.IUISceneDelegate

Added methods:

public virtual void ContinueUserActivity (UIScene scene, Foundation.NSUserActivity userActivity);
public virtual void DidBecomeActive (UIScene scene);
public virtual void DidDisconnect (UIScene scene);
public virtual void DidEnterBackground (UIScene scene);
public virtual void DidFailToContinueUserActivity (UIScene scene, string userActivityType, Foundation.NSError error);
public virtual void DidUpdateUserActivity (UIScene scene, Foundation.NSUserActivity userActivity);
public virtual Foundation.NSUserActivity GetStateRestorationActivity (UIScene scene);
public virtual void OpenUrlContexts (UIScene scene, Foundation.NSSet<UIOpenUrlContext> urlContexts);
public virtual void RestoreInteractionState (UIScene scene, Foundation.NSUserActivity stateRestorationActivity);
public virtual void WillConnect (UIScene scene, UISceneSession session, UISceneConnectionOptions connectionOptions);
public virtual void WillContinueUserActivity (UIScene scene, string userActivityType);
public virtual void WillEnterForeground (UIScene scene);
public virtual void WillResignActive (UIScene scene);

Type Changed: UIKit.IUIScreenshotServiceDelegate

Added method:

public virtual void GeneratePdfRepresentation (UIScreenshotService screenshotService, UIScreenshotServiceDelegatePdfHandler completionHandler);

Type Changed: UIKit.IUIScribbleInteractionDelegate

Added methods:

public virtual void DidFinishWriting (UIScribbleInteraction interaction);
public virtual bool ShouldBegin (UIScribbleInteraction interaction, CoreGraphics.CGPoint location);
public virtual bool ShouldDelayFocus (UIScribbleInteraction interaction);
public virtual void WillBeginWriting (UIScribbleInteraction interaction);

Type Changed: UIKit.IUIScrollViewAccessibilityDelegate

Added methods:

public virtual Foundation.NSAttributedString GetAccessibilityAttributedScrollStatus (UIScrollView scrollView);
public virtual string GetAccessibilityScrollStatus (UIScrollView scrollView);

Type Changed: UIKit.IUIScrollViewDelegate

Added methods:

public virtual void DecelerationEnded (UIScrollView scrollView);
public virtual void DecelerationStarted (UIScrollView scrollView);
public virtual void DidChangeAdjustedContentInset (UIScrollView scrollView);
public virtual void DidZoom (UIScrollView scrollView);
public virtual void DraggingEnded (UIScrollView scrollView, bool willDecelerate);
public virtual void DraggingStarted (UIScrollView scrollView);
public virtual void ScrollAnimationEnded (UIScrollView scrollView);
public virtual void Scrolled (UIScrollView scrollView);
public virtual void ScrolledToTop (UIScrollView scrollView);
public virtual bool ShouldScrollToTop (UIScrollView scrollView);
public virtual UIView ViewForZoomingInScrollView (UIScrollView scrollView);
public virtual void WillEndDragging (UIScrollView scrollView, CoreGraphics.CGPoint velocity, ref CoreGraphics.CGPoint targetContentOffset);
public virtual void ZoomingEnded (UIScrollView scrollView, UIView withView, System.Runtime.InteropServices.NFloat atScale);
public virtual void ZoomingStarted (UIScrollView scrollView, UIView view);

Type Changed: UIKit.IUISearchBarDelegate

Added methods:

public virtual void BookmarkButtonClicked (UISearchBar searchBar);
public virtual void CancelButtonClicked (UISearchBar searchBar);
public virtual void ListButtonClicked (UISearchBar searchBar);
public virtual void OnEditingStarted (UISearchBar searchBar);
public virtual void OnEditingStopped (UISearchBar searchBar);
public virtual void SearchButtonClicked (UISearchBar searchBar);
public virtual void SelectedScopeButtonIndexChanged (UISearchBar searchBar, IntPtr selectedScope);
public virtual bool ShouldBeginEditing (UISearchBar searchBar);
public virtual bool ShouldChangeTextInRange (UISearchBar searchBar, Foundation.NSRange range, string text);
public virtual bool ShouldEndEditing (UISearchBar searchBar);
public virtual void TextChanged (UISearchBar searchBar, string searchText);

Type Changed: UIKit.IUISearchControllerDelegate

Added methods:

public virtual void DidChangeFromSearchBarPlacement (UISearchController searchController, UINavigationItemSearchBarPlacement previousPlacement);
public virtual void DidDismissSearchController (UISearchController searchController);
public virtual void DidPresentSearchController (UISearchController searchController);
public virtual void PresentSearchController (UISearchController searchController);
public virtual void WillChangeToSearchBarPlacement (UISearchController searchController, UINavigationItemSearchBarPlacement newPlacement);
public virtual void WillDismissSearchController (UISearchController searchController);
public virtual void WillPresentSearchController (UISearchController searchController);

Type Changed: UIKit.IUISearchDisplayDelegate

Added methods:

public virtual void DidBeginSearch (UISearchDisplayController controller);
public virtual void DidEndSearch (UISearchDisplayController controller);
public virtual void DidHideSearchResults (UISearchDisplayController controller, UITableView tableView);
public virtual void DidLoadSearchResults (UISearchDisplayController controller, UITableView tableView);
public virtual void DidShowSearchResults (UISearchDisplayController controller, UITableView tableView);
public virtual bool ShouldReloadForSearchScope (UISearchDisplayController controller, IntPtr forSearchOption);
public virtual bool ShouldReloadForSearchString (UISearchDisplayController controller, string forSearchString);
public virtual void WillBeginSearch (UISearchDisplayController controller);
public virtual void WillEndSearch (UISearchDisplayController controller);
public virtual void WillHideSearchResults (UISearchDisplayController controller, UITableView tableView);
public virtual void WillShowSearchResults (UISearchDisplayController controller, UITableView tableView);
public virtual void WillUnloadSearchResults (UISearchDisplayController controller, UITableView tableView);

Type Changed: UIKit.IUISearchResultsUpdating

Modified methods:

-public abstract void UpdateSearchResultsForSearchController (UISearchController searchController)
+public virtual void UpdateSearchResultsForSearchController (UISearchController searchController)

Added method:

public virtual void UpdateSearchResults (UISearchController searchController, IUISearchSuggestion searchSuggestion);

Type Changed: UIKit.IUISearchSuggestion

Modified properties:

-public abstract Foundation.NSString LocalizedSuggestion { get; }
+public virtual Foundation.NSString LocalizedSuggestion { get; }

Added properties:

public virtual Foundation.NSAttributedString LocalizedAttributedSuggestion { get; }
public virtual Foundation.NSObject RepresentedObject { get; set; }

Added methods:

public virtual UIImage GetIconImage ();
public virtual Foundation.NSString GetLocalizedDescription ();

Type Changed: UIKit.IUISearchTextFieldDelegate

Added methods:

public virtual void DidSelectSuggestion (UISearchTextField searchTextField, IUISearchSuggestion suggestion);
public virtual Foundation.NSItemProvider GetItemProvider (UISearchTextField searchTextField, UISearchToken token);

Type Changed: UIKit.IUISearchTextFieldPasteItem

Modified methods:

-public abstract void SetSearchTokenResult (UISearchToken token)
+public virtual void SetSearchTokenResult (UISearchToken token)

Type Changed: UIKit.IUIShapeProvider

Modified methods:

-public abstract UIResolvedShape CreateResolvedShape (UIShapeResolutionContext context)
+public virtual UIResolvedShape CreateResolvedShape (UIShapeResolutionContext context)

Type Changed: UIKit.IUISheetPresentationControllerDelegate

Added method:

public virtual void DidChangeSelectedDetentIdentifier (UISheetPresentationController sheetPresentationController);

Type Changed: UIKit.IUISheetPresentationControllerDetentResolutionContext

Modified properties:

-public abstract UITraitCollection ContainerTraitCollection { get; }
+public virtual UITraitCollection ContainerTraitCollection { get; }
-public abstract System.Runtime.InteropServices.NFloat MaximumDetentValue { get; }
+public virtual System.Runtime.InteropServices.NFloat MaximumDetentValue { get; }

Type Changed: UIKit.IUISplitViewControllerDelegate

Added methods:

public virtual bool CollapseSecondViewController (UISplitViewController splitViewController, UIViewController secondaryViewController, UIViewController primaryViewController);
public virtual void DidCollapse (UISplitViewController splitViewController);
public virtual void DidExpand (UISplitViewController splitViewController);
public virtual bool EventShowDetailViewController (UISplitViewController splitViewController, UIViewController vc, Foundation.NSObject sender);
public virtual bool EventShowViewController (UISplitViewController splitViewController, UIViewController vc, Foundation.NSObject sender);
public virtual UISplitViewControllerDisplayMode GetDisplayModeForExpanding (UISplitViewController splitViewController, UISplitViewControllerDisplayMode proposedDisplayMode);
public virtual UIInterfaceOrientation GetPreferredInterfaceOrientationForPresentation (UISplitViewController splitViewController);
public virtual UIViewController GetPrimaryViewControllerForCollapsingSplitViewController (UISplitViewController splitViewController);
public virtual UIViewController GetPrimaryViewControllerForExpandingSplitViewController (UISplitViewController splitViewController);
public virtual UISplitViewControllerDisplayMode GetTargetDisplayModeForAction (UISplitViewController svc);
public virtual UISplitViewControllerColumn GetTopColumnForCollapsing (UISplitViewController splitViewController, UISplitViewControllerColumn proposedTopColumn);
public virtual void InteractivePresentationGestureDidEnd (UISplitViewController svc);
public virtual void InteractivePresentationGestureWillBegin (UISplitViewController svc);
public virtual UIViewController SeparateSecondaryViewController (UISplitViewController splitViewController, UIViewController primaryViewController);
public virtual bool ShouldHideViewController (UISplitViewController svc, UIViewController viewController, UIInterfaceOrientation inOrientation);
public virtual UIInterfaceOrientationMask SupportedInterfaceOrientations (UISplitViewController splitViewController);
public virtual void WillChangeDisplayMode (UISplitViewController svc, UISplitViewControllerDisplayMode displayMode);
public virtual void WillHideColumn (UISplitViewController splitViewController, UISplitViewControllerColumn column);
public virtual void WillHideViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc);
public virtual void WillPresentViewController (UISplitViewController svc, UIPopoverController pc, UIViewController aViewController);
public virtual void WillShowColumn (UISplitViewController splitViewController, UISplitViewControllerColumn column);
public virtual void WillShowViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem button);

Type Changed: UIKit.IUISpringLoadedInteractionBehavior

Modified methods:

-public abstract bool ShouldAllowInteraction (UISpringLoadedInteraction interaction, IUISpringLoadedInteractionContext context)
+public virtual bool ShouldAllowInteraction (UISpringLoadedInteraction interaction, IUISpringLoadedInteractionContext context)

Added method:

public virtual void InteractionDidFinish (UISpringLoadedInteraction interaction);

Type Changed: UIKit.IUISpringLoadedInteractionContext

Modified properties:

-public abstract UISpringLoadedInteractionEffectState State { get; }
+public virtual UISpringLoadedInteractionEffectState State { get; }
-public abstract Foundation.NSObject TargetItem { get; set; }
+public virtual Foundation.NSObject TargetItem { get; set; }
-public abstract UIView TargetView { get; set; }
+public virtual UIView TargetView { get; set; }

Modified methods:

-public abstract CoreGraphics.CGPoint LocationInView (UIView view)
+public virtual CoreGraphics.CGPoint LocationInView (UIView view)

Type Changed: UIKit.IUISpringLoadedInteractionEffect

Modified methods:

-public abstract void DidChange (UISpringLoadedInteraction interaction, IUISpringLoadedInteractionContext context)
+public virtual void DidChange (UISpringLoadedInteraction interaction, IUISpringLoadedInteractionContext context)

Type Changed: UIKit.IUISpringLoadedInteractionSupporting

Modified properties:

-public abstract bool SpringLoaded { get; set; }
+public virtual bool SpringLoaded { get; set; }

Type Changed: UIKit.IUIStateRestoring

Added properties:

public virtual ObjCRuntime.Class ObjectRestorationClass { get; }
public virtual IUIStateRestoring RestorationParent { get; }

Added methods:

public virtual void ApplicationFinishedRestoringState ();
public virtual void DecodeRestorableState (Foundation.NSCoder coder);
public virtual void EncodeRestorableState (Foundation.NSCoder coder);

Type Changed: UIKit.IUITabBarControllerDelegate

Added methods:

public virtual void FinishedCustomizingViewControllers (UITabBarController tabBarController, UIViewController[] viewControllers, bool changed);
public virtual IUIViewControllerAnimatedTransitioning GetAnimationControllerForTransition (UITabBarController tabBarController, UIViewController fromViewController, UIViewController toViewController);
public virtual IUIViewControllerInteractiveTransitioning GetInteractionControllerForAnimationController (UITabBarController tabBarController, IUIViewControllerAnimatedTransitioning animationController);
public virtual UIInterfaceOrientation GetPreferredInterfaceOrientation (UITabBarController tabBarController);
public virtual void OnCustomizingViewControllers (UITabBarController tabBarController, UIViewController[] viewControllers);
public virtual void OnEndCustomizingViewControllers (UITabBarController tabBarController, UIViewController[] viewControllers, bool changed);
public virtual bool ShouldSelectViewController (UITabBarController tabBarController, UIViewController viewController);
public virtual UIInterfaceOrientationMask SupportedInterfaceOrientations (UITabBarController tabBarController);
public virtual void ViewControllerSelected (UITabBarController tabBarController, UIViewController viewController);

Type Changed: UIKit.IUITabBarDelegate

Added methods:

public virtual void DidBeginCustomizingItems (UITabBar tabbar, UITabBarItem[] items);
public virtual void DidEndCustomizingItems (UITabBar tabbar, UITabBarItem[] items, bool changed);
public virtual void ItemSelected (UITabBar tabbar, UITabBarItem item);
public virtual void WillBeginCustomizingItems (UITabBar tabbar, UITabBarItem[] items);
public virtual void WillEndCustomizingItems (UITabBar tabbar, UITabBarItem[] items, bool changed);

Type Changed: UIKit.IUITableViewDataSource

Modified methods:

-public abstract UITableViewCell GetCell (UITableView tableView, Foundation.NSIndexPath indexPath)
+public virtual UITableViewCell GetCell (UITableView tableView, Foundation.NSIndexPath indexPath)
-public abstract IntPtr RowsInSection (UITableView tableView, IntPtr section)
+public virtual IntPtr RowsInSection (UITableView tableView, IntPtr section)

Added methods:

public virtual bool CanEditRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool CanMoveRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void CommitEditingStyle (UITableView tableView, UITableViewCellEditingStyle editingStyle, Foundation.NSIndexPath indexPath);
public virtual void MoveRow (UITableView tableView, Foundation.NSIndexPath sourceIndexPath, Foundation.NSIndexPath destinationIndexPath);
public virtual IntPtr NumberOfSections (UITableView tableView);
public virtual IntPtr SectionFor (UITableView tableView, string title, IntPtr atIndex);
public virtual string[] SectionIndexTitles (UITableView tableView);
public virtual string TitleForFooter (UITableView tableView, IntPtr section);
public virtual string TitleForHeader (UITableView tableView, IntPtr section);

Type Changed: UIKit.IUITableViewDataSourcePrefetching

Modified methods:

-public abstract void PrefetchRows (UITableView tableView, Foundation.NSIndexPath[] indexPaths)
+public virtual void PrefetchRows (UITableView tableView, Foundation.NSIndexPath[] indexPaths)

Added method:

public virtual void CancelPrefetching (UITableView tableView, Foundation.NSIndexPath[] indexPaths);

Type Changed: UIKit.IUITableViewDelegate

Added methods:

public virtual void AccessoryButtonTapped (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool CanFocusRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool CanPerformAction (UITableView tableView, ObjCRuntime.Selector action, Foundation.NSIndexPath indexPath, Foundation.NSObject sender);
public virtual bool CanPerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void CellDisplayingEnded (UITableView tableView, UITableViewCell cell, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath CustomizeMoveTarget (UITableView tableView, Foundation.NSIndexPath sourceIndexPath, Foundation.NSIndexPath proposedIndexPath);
public virtual void DidBeginMultipleSelectionInteraction (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void DidEndEditing (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void DidEndMultipleSelectionInteraction (UITableView tableView);
public virtual void DidUpdateFocus (UITableView tableView, UITableViewFocusUpdateContext context, UIFocusAnimationCoordinator coordinator);
public virtual UITableViewRowAction[] EditActionsForRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UITableViewCellEditingStyle EditingStyleForRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual System.Runtime.InteropServices.NFloat EstimatedHeight (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual System.Runtime.InteropServices.NFloat EstimatedHeightForFooter (UITableView tableView, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat EstimatedHeightForHeader (UITableView tableView, IntPtr section);
public virtual void FooterViewDisplayingEnded (UITableView tableView, UIView footerView, IntPtr section);
public virtual UIContextMenuConfiguration GetContextMenuConfiguration (UITableView tableView, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);
public virtual System.Runtime.InteropServices.NFloat GetHeightForFooter (UITableView tableView, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat GetHeightForHeader (UITableView tableView, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat GetHeightForRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath GetIndexPathForPreferredFocusedView (UITableView tableView);
public virtual UISwipeActionsConfiguration GetLeadingSwipeActionsConfiguration (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UITargetedPreview GetPreviewForDismissingContextMenu (UITableView tableView, UIContextMenuConfiguration configuration);
public virtual UITargetedPreview GetPreviewForHighlightingContextMenu (UITableView tableView, UIContextMenuConfiguration configuration);
public virtual bool GetSelectionFollowsFocusForRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UISwipeActionsConfiguration GetTrailingSwipeActionsConfiguration (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UIView GetViewForFooter (UITableView tableView, IntPtr section);
public virtual UIView GetViewForHeader (UITableView tableView, IntPtr section);
public virtual void HeaderViewDisplayingEnded (UITableView tableView, UIView headerView, IntPtr section);
public virtual IntPtr IndentationLevel (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void PerformAction (UITableView tableView, ObjCRuntime.Selector action, Foundation.NSIndexPath indexPath, Foundation.NSObject sender);
public virtual void PerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void RowDeselected (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void RowHighlighted (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void RowSelected (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void RowUnhighlighted (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual bool ShouldBeginMultipleSelectionInteraction (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldHighlightRow (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual bool ShouldIndentWhileEditing (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldShowMenu (UITableView tableView, Foundation.NSIndexPath rowAtindexPath);
public virtual bool ShouldSpringLoadRow (UITableView tableView, Foundation.NSIndexPath indexPath, IUISpringLoadedInteractionContext context);
public virtual bool ShouldUpdateFocus (UITableView tableView, UITableViewFocusUpdateContext context);
public virtual string TitleForDeleteConfirmation (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void WillBeginEditing (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath WillDeselectRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void WillDisplay (UITableView tableView, UITableViewCell cell, Foundation.NSIndexPath indexPath);
public virtual void WillDisplayContextMenu (UITableView tableView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillDisplayFooterView (UITableView tableView, UIView footerView, IntPtr section);
public virtual void WillDisplayHeaderView (UITableView tableView, UIView headerView, IntPtr section);
public virtual void WillEndContextMenuInteraction (UITableView tableView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillPerformPreviewAction (UITableView tableView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionCommitAnimating animator);
public virtual Foundation.NSIndexPath WillSelectRow (UITableView tableView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.IUITableViewDragDelegate

Modified methods:

-public abstract UIDragItem[] GetItemsForBeginningDragSession (UITableView tableView, IUIDragSession session, Foundation.NSIndexPath indexPath)
+public virtual UIDragItem[] GetItemsForBeginningDragSession (UITableView tableView, IUIDragSession session, Foundation.NSIndexPath indexPath)

Added methods:

public virtual bool DragSessionAllowsMoveOperation (UITableView tableView, IUIDragSession session);
public virtual void DragSessionDidEnd (UITableView tableView, IUIDragSession session);
public virtual bool DragSessionIsRestrictedToDraggingApplication (UITableView tableView, IUIDragSession session);
public virtual void DragSessionWillBegin (UITableView tableView, IUIDragSession session);
public virtual UIDragPreviewParameters GetDragPreviewParameters (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UIDragItem[] GetItemsForAddingToDragSession (UITableView tableView, IUIDragSession session, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);

Type Changed: UIKit.IUITableViewDropCoordinator

Modified properties:

-public abstract Foundation.NSIndexPath DestinationIndexPath { get; }
+public virtual Foundation.NSIndexPath DestinationIndexPath { get; }
-public abstract IUITableViewDropItem[] Items { get; }
+public virtual IUITableViewDropItem[] Items { get; }
-public abstract UITableViewDropProposal Proposal { get; }
+public virtual UITableViewDropProposal Proposal { get; }
-public abstract IUIDropSession Session { get; }
+public virtual IUIDropSession Session { get; }

Modified methods:

-public abstract IUIDragAnimating DropItemIntoRow (UIDragItem dragItem, Foundation.NSIndexPath indexPath, CoreGraphics.CGRect rect)
+public virtual IUIDragAnimating DropItemIntoRow (UIDragItem dragItem, Foundation.NSIndexPath indexPath, CoreGraphics.CGRect rect)
-public abstract IUITableViewDropPlaceholderContext DropItemToPlaceholder (UIDragItem dragItem, UITableViewDropPlaceholder placeholder)
+public virtual IUITableViewDropPlaceholderContext DropItemToPlaceholder (UIDragItem dragItem, UITableViewDropPlaceholder placeholder)
-public abstract IUIDragAnimating DropItemToRow (UIDragItem dragItem, Foundation.NSIndexPath indexPath)
+public virtual IUIDragAnimating DropItemToRow (UIDragItem dragItem, Foundation.NSIndexPath indexPath)
-public abstract IUIDragAnimating DropItemToTarget (UIDragItem dragItem, UIDragPreviewTarget target)
+public virtual IUIDragAnimating DropItemToTarget (UIDragItem dragItem, UIDragPreviewTarget target)

Type Changed: UIKit.IUITableViewDropDelegate

Modified methods:

-public abstract void PerformDrop (UITableView tableView, IUITableViewDropCoordinator coordinator)
+public virtual void PerformDrop (UITableView tableView, IUITableViewDropCoordinator coordinator)

Added methods:

public virtual bool CanHandleDropSession (UITableView tableView, IUIDropSession session);
public virtual void DropSessionDidEnd (UITableView tableView, IUIDropSession session);
public virtual void DropSessionDidEnter (UITableView tableView, IUIDropSession session);
public virtual void DropSessionDidExit (UITableView tableView, IUIDropSession session);
public virtual UITableViewDropProposal DropSessionDidUpdate (UITableView tableView, IUIDropSession session, Foundation.NSIndexPath destinationIndexPath);
public virtual UIDragPreviewParameters GetDropPreviewParameters (UITableView tableView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.IUITableViewDropItem

Modified properties:

-public abstract UIDragItem DragItem { get; }
+public virtual UIDragItem DragItem { get; }
-public abstract CoreGraphics.CGSize PreviewSize { get; }
+public virtual CoreGraphics.CGSize PreviewSize { get; }
-public abstract Foundation.NSIndexPath SourceIndexPath { get; }
+public virtual Foundation.NSIndexPath SourceIndexPath { get; }

Type Changed: UIKit.IUITableViewDropPlaceholderContext

Modified properties:

-public abstract UIDragItem DragItem { get; }
+public virtual UIDragItem DragItem { get; }

Modified methods:

-public abstract bool CommitInsertion (System.Action%LESSERTHANREPLACEMENT%Foundation.NSIndexPath%GREATERTHANREPLACEMENT% dataSourceUpdates)
+public virtual bool CommitInsertion (System.Action%LESSERTHANREPLACEMENT%Foundation.NSIndexPath%GREATERTHANREPLACEMENT% dataSourceUpdates)
-public abstract bool DeletePlaceholder ()
+public virtual bool DeletePlaceholder ()

Type Changed: UIKit.IUITextCursorView

Modified properties:

-public abstract bool Blinking { get; set; }
+public virtual bool Blinking { get; set; }

Modified methods:

-public abstract void ResetBlinkAnimation ()
+public virtual void ResetBlinkAnimation ()

Type Changed: UIKit.IUITextDocumentProxy

Modified properties:

-public abstract string DocumentContextAfterInput { get; }
+public virtual string DocumentContextAfterInput { get; }
-public abstract string DocumentContextBeforeInput { get; }
+public virtual string DocumentContextBeforeInput { get; }
-public abstract Foundation.NSUuid DocumentIdentifier { get; }
+public virtual Foundation.NSUuid DocumentIdentifier { get; }
-public abstract UITextInputMode DocumentInputMode { get; }
+public virtual UITextInputMode DocumentInputMode { get; }
-public abstract string SelectedText { get; }
+public virtual string SelectedText { get; }

Modified methods:

-public abstract void AdjustTextPositionByCharacterOffset (IntPtr offset)
+public virtual void AdjustTextPositionByCharacterOffset (IntPtr offset)
-public abstract void SetMarkedText (string markedText, Foundation.NSRange selectedRange)
+public virtual void SetMarkedText (string markedText, Foundation.NSRange selectedRange)
-public abstract void UnmarkText ()
+public virtual void UnmarkText ()

Type Changed: UIKit.IUITextDragDelegate

Added methods:

public virtual void DragSessionDidEnd (IUITextDraggable textDraggableView, IUIDragSession session, UIDropOperation operation);
public virtual void DragSessionWillBegin (IUITextDraggable textDraggableView, IUIDragSession session);
public virtual UIDragItem[] GetItemsForDrag (IUITextDraggable textDraggableView, IUITextDragRequest dragRequest);
public virtual UITargetedDragPreview GetPreviewForLiftingItem (IUITextDraggable textDraggableView, UIDragItem item, IUIDragSession session);
public virtual void WillAnimateLift (IUITextDraggable textDraggableView, IUIDragAnimating animator, IUIDragSession session);

Type Changed: UIKit.IUITextDragRequest

Modified properties:

-public abstract UITextRange DragRange { get; }
+public virtual UITextRange DragRange { get; }
-public abstract IUIDragSession DragSession { get; }
+public virtual IUIDragSession DragSession { get; }
-public abstract UIDragItem[] ExistingItems { get; }
+public virtual UIDragItem[] ExistingItems { get; }
-public abstract bool Selected { get; }
+public virtual bool Selected { get; }
-public abstract UIDragItem[] SuggestedItems { get; }
+public virtual UIDragItem[] SuggestedItems { get; }

Type Changed: UIKit.IUITextDraggable

Modified properties:

-public abstract bool TextDragActive { get; }
+public virtual bool TextDragActive { get; }
-public abstract IUITextDragDelegate TextDragDelegate { get; set; }
+public virtual IUITextDragDelegate TextDragDelegate { get; set; }
-public abstract UIDragInteraction TextDragInteraction { get; }
+public virtual UIDragInteraction TextDragInteraction { get; }
-public abstract UITextDragOptions TextDragOptions { get; set; }
+public virtual UITextDragOptions TextDragOptions { get; set; }

Type Changed: UIKit.IUITextDropDelegate

Added methods:

public virtual void DropSessionDidEnd (IUITextDroppable textDroppableView, IUIDropSession session);
public virtual void DropSessionDidEnter (IUITextDroppable textDroppableView, IUIDropSession session);
public virtual void DropSessionDidExit (IUITextDroppable textDroppableView, IUIDropSession session);
public virtual void DropSessionDidUpdate (IUITextDroppable textDroppableView, IUIDropSession session);
public virtual UITargetedDragPreview GetPreviewForDroppingAllItems (IUITextDroppable textDroppableView, UITargetedDragPreview defaultPreview);
public virtual UITextDropProposal GetProposalForDrop (IUITextDroppable textDroppableView, IUITextDropRequest drop);
public virtual UITextDropEditability WillBecomeEditable (IUITextDroppable textDroppableView, IUITextDropRequest drop);
public virtual void WillPerformDrop (IUITextDroppable textDroppableView, IUITextDropRequest drop);

Type Changed: UIKit.IUITextDropRequest

Modified properties:

-public abstract UITextPosition DropPosition { get; }
+public virtual UITextPosition DropPosition { get; }
-public abstract IUIDropSession DropSession { get; }
+public virtual IUIDropSession DropSession { get; }
-public abstract bool SameView { get; }
+public virtual bool SameView { get; }
-public abstract UITextDropProposal SuggestedProposal { get; }
+public virtual UITextDropProposal SuggestedProposal { get; }

Type Changed: UIKit.IUITextDroppable

Modified properties:

-public abstract bool TextDropActive { get; }
+public virtual bool TextDropActive { get; }
-public abstract IUITextDropDelegate TextDropDelegate { get; set; }
+public virtual IUITextDropDelegate TextDropDelegate { get; set; }
-public abstract UIDropInteraction TextDropInteraction { get; }
+public virtual UIDropInteraction TextDropInteraction { get; }

Type Changed: UIKit.IUITextFieldDelegate

Added methods:

public virtual void DidChangeSelection (UITextField textField);
public virtual void EditingEnded (UITextField textField);
public virtual void EditingEnded (UITextField textField, UITextFieldDidEndEditingReason reason);
public virtual void EditingStarted (UITextField textField);
public virtual UIMenu GetEditMenu (UITextField textField, Foundation.NSRange range, UIMenuElement[] suggestedActions);
public virtual bool ShouldBeginEditing (UITextField textField);
public virtual bool ShouldChangeCharacters (UITextField textField, Foundation.NSRange range, string replacementString);
public virtual bool ShouldClear (UITextField textField);
public virtual bool ShouldEndEditing (UITextField textField);
public virtual bool ShouldReturn (UITextField textField);
public virtual void WillDismissEditMenu (UITextField textField, IUIEditMenuInteractionAnimating animator);
public virtual void WillPresentEditMenu (UITextField textField, IUIEditMenuInteractionAnimating animator);

Type Changed: UIKit.IUITextFormattingCoordinatorDelegate

Modified methods:

-public abstract void UpdateTextAttributes (UITextAttributesConversionHandler conversionHandler)
+public virtual void UpdateTextAttributes (UITextAttributesConversionHandler conversionHandler)

Type Changed: UIKit.IUITextInput

Modified properties:

-public abstract UITextPosition BeginningOfDocument { get; }
+public virtual UITextPosition BeginningOfDocument { get; }
-public abstract UITextPosition EndOfDocument { get; }
+public virtual UITextPosition EndOfDocument { get; }
-public abstract UITextRange MarkedTextRange { get; }
+public virtual UITextRange MarkedTextRange { get; }
-public abstract Foundation.NSDictionary MarkedTextStyle { get; set; }
+public virtual Foundation.NSDictionary MarkedTextStyle { get; set; }
-public abstract UITextRange SelectedTextRange { get; set; }
+public virtual UITextRange SelectedTextRange { get; set; }
-public abstract Foundation.NSObject WeakInputDelegate { get; set; }
+public virtual Foundation.NSObject WeakInputDelegate { get; set; }
-public abstract Foundation.NSObject WeakTokenizer { get; }
+public virtual Foundation.NSObject WeakTokenizer { get; }

Added properties:

public virtual UITextStorageDirection SelectionAffinity { get; set; }
public virtual UIView TextInputView { get; }

Modified methods:

-public abstract Foundation.NSComparisonResult ComparePosition (UITextPosition first, UITextPosition second)
+public virtual Foundation.NSComparisonResult ComparePosition (UITextPosition first, UITextPosition second)
-public abstract Foundation.NSWritingDirection GetBaseWritingDirection (UITextPosition forPosition, UITextStorageDirection direction)
+public virtual Foundation.NSWritingDirection GetBaseWritingDirection (UITextPosition forPosition, UITextStorageDirection direction)
-public abstract CoreGraphics.CGRect GetCaretRectForPosition (UITextPosition position)
+public virtual CoreGraphics.CGRect GetCaretRectForPosition (UITextPosition position)
-public abstract UITextRange GetCharacterRange (UITextPosition byExtendingPosition, UITextLayoutDirection direction)
+public virtual UITextRange GetCharacterRange (UITextPosition byExtendingPosition, UITextLayoutDirection direction)
-public abstract UITextRange GetCharacterRangeAtPoint (CoreGraphics.CGPoint point)
+public virtual UITextRange GetCharacterRangeAtPoint (CoreGraphics.CGPoint point)
-public abstract UITextPosition GetClosestPositionToPoint (CoreGraphics.CGPoint point)
+public virtual UITextPosition GetClosestPositionToPoint (CoreGraphics.CGPoint point)
-public abstract UITextPosition GetClosestPositionToPoint (CoreGraphics.CGPoint point, UITextRange withinRange)
+public virtual UITextPosition GetClosestPositionToPoint (CoreGraphics.CGPoint point, UITextRange withinRange)
-public abstract CoreGraphics.CGRect GetFirstRectForRange (UITextRange range)
+public virtual CoreGraphics.CGRect GetFirstRectForRange (UITextRange range)
-public abstract IntPtr GetOffsetFromPosition (UITextPosition fromPosition, UITextPosition toPosition)
+public virtual IntPtr GetOffsetFromPosition (UITextPosition fromPosition, UITextPosition toPosition)
-public abstract UITextPosition GetPosition (UITextPosition fromPosition, IntPtr offset)
+public virtual UITextPosition GetPosition (UITextPosition fromPosition, IntPtr offset)
-public abstract UITextPosition GetPosition (UITextPosition fromPosition, UITextLayoutDirection inDirection, IntPtr offset)
+public virtual UITextPosition GetPosition (UITextPosition fromPosition, UITextLayoutDirection inDirection, IntPtr offset)
-public abstract UITextPosition GetPositionWithinRange (UITextRange range, UITextLayoutDirection direction)
+public virtual UITextPosition GetPositionWithinRange (UITextRange range, UITextLayoutDirection direction)
-public abstract UITextSelectionRect[] GetSelectionRects (UITextRange range)
+public virtual UITextSelectionRect[] GetSelectionRects (UITextRange range)
-public abstract UITextRange GetTextRange (UITextPosition fromPosition, UITextPosition toPosition)
+public virtual UITextRange GetTextRange (UITextPosition fromPosition, UITextPosition toPosition)
-public abstract void ReplaceText (UITextRange range, string text)
+public virtual void ReplaceText (UITextRange range, string text)
-public abstract void SetBaseWritingDirectionforRange (Foundation.NSWritingDirection writingDirection, UITextRange range)
+public virtual void SetBaseWritingDirectionforRange (Foundation.NSWritingDirection writingDirection, UITextRange range)
-public abstract void SetMarkedText (string markedText, Foundation.NSRange selectedRange)
+public virtual void SetMarkedText (string markedText, Foundation.NSRange selectedRange)
-public abstract string TextInRange (UITextRange range)
+public virtual string TextInRange (UITextRange range)
-public abstract void UnmarkText ()
+public virtual void UnmarkText ()

Added methods:

public virtual void BeginFloatingCursor (CoreGraphics.CGPoint point);
public virtual void DictationRecognitionFailed ();
public virtual void DictationRecordingDidEnd ();
public virtual void EndFloatingCursor ();
public virtual CoreGraphics.CGAffineTransform GetCaretTransform (UITextPosition forPosition);
public virtual IntPtr GetCharacterOffsetOfPosition (UITextPosition position, UITextRange range);
public virtual UIMenu GetEditMenu (UITextRange textRange, UIMenuElement[] suggestedActions);
public virtual CoreGraphics.CGRect GetFrameForDictationResultPlaceholder (Foundation.NSObject placeholder);
public virtual UITextPosition GetPosition (UITextRange withinRange, IntPtr atCharacterOffset);
public virtual Foundation.NSDictionary GetTextStyling (UITextPosition atPosition, UITextStorageDirection inDirection);
public virtual void InsertDictationResult (Foundation.NSArray dictationResult);
public virtual Foundation.NSObject InsertDictationResultPlaceholder ();
public virtual void InsertText (string text, string[] alternatives, UITextAlternativeStyle style);
public virtual UITextPlaceholder InsertTextPlaceholder (CoreGraphics.CGSize size);
public virtual void RemoveDictationResultPlaceholder (Foundation.NSObject placeholder, bool willInsertResult);
public virtual void RemoveTextPlaceholder (UITextPlaceholder textPlaceholder);
public virtual void SetAttributedMarkedText (Foundation.NSAttributedString markedText, Foundation.NSRange selectedRange);
public virtual bool ShouldChangeTextInRange (UITextRange inRange, string replacementText);
public virtual void UpdateFloatingCursor (CoreGraphics.CGPoint point);
public virtual void WillDismissEditMenu (IUIEditMenuInteractionAnimating animator);
public virtual void WillPresentEditMenu (IUIEditMenuInteractionAnimating animator);

Type Changed: UIKit.IUITextInputDelegate

Modified methods:

-public abstract void SelectionDidChange (IUITextInput uiTextInput)
+public virtual void SelectionDidChange (IUITextInput uiTextInput)
-public abstract void SelectionWillChange (IUITextInput uiTextInput)
+public virtual void SelectionWillChange (IUITextInput uiTextInput)
-public abstract void TextDidChange (IUITextInput textInput)
+public virtual void TextDidChange (IUITextInput textInput)
-public abstract void TextWillChange (IUITextInput textInput)
+public virtual void TextWillChange (IUITextInput textInput)

Type Changed: UIKit.IUITextInputTokenizer

Modified methods:

-public abstract UITextPosition GetPosition (UITextPosition fromPosition, UITextGranularity toBoundary, UITextDirection inDirection)
+public virtual UITextPosition GetPosition (UITextPosition fromPosition, UITextGranularity toBoundary, UITextDirection inDirection)
-public abstract UITextRange GetRangeEnclosingPosition (UITextPosition position, UITextGranularity granularity, UITextDirection direction)
+public virtual UITextRange GetRangeEnclosingPosition (UITextPosition position, UITextGranularity granularity, UITextDirection direction)
-public abstract bool ProbeDirection (UITextPosition probePosition, UITextGranularity atBoundary, UITextDirection inDirection)
+public virtual bool ProbeDirection (UITextPosition probePosition, UITextGranularity atBoundary, UITextDirection inDirection)
-public abstract bool ProbeDirectionWithinTextUnit (UITextPosition probePosition, UITextGranularity withinTextUnit, UITextDirection inDirection)
+public virtual bool ProbeDirectionWithinTextUnit (UITextPosition probePosition, UITextGranularity withinTextUnit, UITextDirection inDirection)

Type Changed: UIKit.IUITextInputTraits

Added properties:

public virtual UITextAutocapitalizationType AutocapitalizationType { get; set; }
public virtual UITextAutocorrectionType AutocorrectionType { get; set; }
public virtual bool EnablesReturnKeyAutomatically { get; set; }
public virtual UITextInlinePredictionType InlinePredictionType { get; set; }
public virtual UIKeyboardAppearance KeyboardAppearance { get; set; }
public virtual UIKeyboardType KeyboardType { get; set; }
public virtual UITextInputPasswordRules PasswordRules { get; set; }
public virtual UIReturnKeyType ReturnKeyType { get; set; }
public virtual bool SecureTextEntry { get; set; }
public virtual UITextSmartDashesType SmartDashesType { get; set; }
public virtual UITextSmartInsertDeleteType SmartInsertDeleteType { get; set; }
public virtual UITextSmartQuotesType SmartQuotesType { get; set; }
public virtual UITextSpellCheckingType SpellCheckingType { get; set; }
public virtual Foundation.NSString TextContentType { get; set; }

Type Changed: UIKit.IUITextInteractionDelegate

Added methods:

public virtual void DidEnd (UITextInteraction interaction);
public virtual bool ShouldBegin (UITextInteraction interaction, CoreGraphics.CGPoint point);
public virtual void WillBegin (UITextInteraction interaction);

Type Changed: UIKit.IUITextPasteConfigurationSupporting

Modified properties:

-public abstract IUITextPasteDelegate PasteDelegate { get; set; }
+public virtual IUITextPasteDelegate PasteDelegate { get; set; }

Type Changed: UIKit.IUITextPasteDelegate

Added methods:

public virtual Foundation.NSAttributedString CombineItemAttributedStrings (IUITextPasteConfigurationSupporting textPasteConfigurationSupporting, Foundation.NSAttributedString[] itemStrings, UITextRange textRange);
public virtual UITextRange PerformPaste (IUITextPasteConfigurationSupporting textPasteConfigurationSupporting, Foundation.NSAttributedString attributedString, UITextRange textRange);
public virtual bool ShouldAnimatePaste (IUITextPasteConfigurationSupporting textPasteConfigurationSupporting, Foundation.NSAttributedString attributedString, UITextRange textRange);
public virtual void TransformPasteItem (IUITextPasteConfigurationSupporting textPasteConfigurationSupporting, IUITextPasteItem item);

Type Changed: UIKit.IUITextPasteItem

Modified properties:

-public abstract Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% DefaultAttributes { get; }
+public virtual Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% DefaultAttributes { get; }
-public abstract Foundation.NSItemProvider ItemProvider { get; }
+public virtual Foundation.NSItemProvider ItemProvider { get; }
-public abstract Foundation.NSObject LocalObject { get; }
+public virtual Foundation.NSObject LocalObject { get; }

Modified methods:

-public abstract void SetAttachmentResult (NSTextAttachment textAttachment)
+public virtual void SetAttachmentResult (NSTextAttachment textAttachment)
-public abstract void SetAttributedStringResult (Foundation.NSAttributedString string)
+public virtual void SetAttributedStringResult (Foundation.NSAttributedString string)
-public abstract void SetDefaultResult ()
+public virtual void SetDefaultResult ()
-public abstract void SetNoResult ()
+public virtual void SetNoResult ()
-public abstract void SetStringResult (string string)
+public virtual void SetStringResult (string string)

Type Changed: UIKit.IUITextSearchAggregator

Modified properties:

-public abstract Foundation.NSOrderedSet%LESSERTHANREPLACEMENT%UITextRange%GREATERTHANREPLACEMENT% AllFoundRanges { get; }
+public virtual Foundation.NSOrderedSet%LESSERTHANREPLACEMENT%UITextRange%GREATERTHANREPLACEMENT% AllFoundRanges { get; }

Modified methods:

-public abstract void FinishedSearching ()
+public virtual void FinishedSearching ()
-public abstract void GetFoundRange (UITextRange range, string string, Foundation.INSCopying document)
+public virtual void GetFoundRange (UITextRange range, string string, Foundation.INSCopying document)
-public abstract void Invalidate ()
+public virtual void Invalidate ()
-public abstract void Invalidate (UITextRange foundRange, Foundation.INSCopying document)
+public virtual void Invalidate (UITextRange foundRange, Foundation.INSCopying document)

Type Changed: UIKit.IUITextSearching

Modified properties:

-public abstract UITextRange SelectedTextRange { get; }
+public virtual UITextRange SelectedTextRange { get; }

Added properties:

public virtual Foundation.INSCopying SelectedTextSearchDocument { get; }
public virtual bool SupportsTextReplacement { get; }

Modified methods:

-public abstract void ClearAllDecoratedFoundText ()
+public virtual void ClearAllDecoratedFoundText ()
-public abstract Foundation.NSComparisonResult Compare (UITextRange foundRange, UITextRange toRange, Foundation.INSCopying document)
+public virtual Foundation.NSComparisonResult Compare (UITextRange foundRange, UITextRange toRange, Foundation.INSCopying document)
-public abstract void Decorate (UITextRange foundRange, Foundation.INSCopying document, UITextSearchFoundTextStyle style)
+public virtual void Decorate (UITextRange foundRange, Foundation.INSCopying document, UITextSearchFoundTextStyle style)
-public abstract void PerformTextSearch (string string, UITextSearchOptions options, IUITextSearchAggregator aggregator)
+public virtual void PerformTextSearch (string string, UITextSearchOptions options, IUITextSearchAggregator aggregator)

Added methods:

public virtual Foundation.NSComparisonResult CompareOrder (Foundation.INSCopying fromDocument, Foundation.INSCopying toDocument);
public virtual void ReplaceAllOccurrences (string queryString, UITextSearchOptions options, string replacementText);
public virtual void ReplaceFoundText (UITextRange range, Foundation.INSCopying document, string replacementText);
public virtual void ScrollRangeToVisible (UITextRange range, Foundation.INSCopying document);
public virtual bool ShouldReplaceFoundText (UITextRange range, Foundation.INSCopying document, string replacementText);
public virtual void WillHighlight (UITextRange foundRange, Foundation.INSCopying document);

Type Changed: UIKit.IUITextSelectionDisplayInteractionDelegate

Added method:

public virtual UIView GetSelectionContainerViewBelowText (UITextSelectionDisplayInteraction interaction);

Type Changed: UIKit.IUITextSelectionHandleView

Modified properties:

-public abstract UIBezierPath CustomShape { get; set; }
+public virtual UIBezierPath CustomShape { get; set; }
-public abstract NSDirectionalRectEdge Direction { get; set; }
+public virtual NSDirectionalRectEdge Direction { get; set; }
-public abstract bool Vertical { get; }
+public virtual bool Vertical { get; }

Modified methods:

-public abstract CoreGraphics.CGRect GetPreferredFrame (CoreGraphics.CGRect rect)
+public virtual CoreGraphics.CGRect GetPreferredFrame (CoreGraphics.CGRect rect)

Type Changed: UIKit.IUITextSelectionHighlightView

Modified properties:

-public abstract UITextSelectionRect[] SelectionRects { get; set; }
+public virtual UITextSelectionRect[] SelectionRects { get; set; }

Type Changed: UIKit.IUITextViewDelegate

Added methods:

public virtual void Changed (UITextView textView);
public virtual void EditingEnded (UITextView textView);
public virtual void EditingStarted (UITextView textView);
public virtual UIMenu GetEditMenuForText (UITextView textView, Foundation.NSRange range, UIMenuElement[] suggestedActions);
public virtual UITextItemMenuConfiguration GetMenuConfiguration (UITextView textView, UITextItem textItem, UIMenu defaultMenu);
public virtual UIAction GetPrimaryAction (UITextView textView, UITextItem textItem, UIAction defaultAction);
public virtual void SelectionChanged (UITextView textView);
public virtual bool ShouldBeginEditing (UITextView textView);
public virtual bool ShouldChangeText (UITextView textView, Foundation.NSRange range, string text);
public virtual bool ShouldEndEditing (UITextView textView);
public virtual bool ShouldInteractWithTextAttachment (UITextView textView, NSTextAttachment textAttachment, Foundation.NSRange characterRange);
public virtual bool ShouldInteractWithTextAttachment (UITextView textView, NSTextAttachment textAttachment, Foundation.NSRange characterRange, UITextItemInteraction interaction);
public virtual bool ShouldInteractWithUrl (UITextView textView, Foundation.NSUrl URL, Foundation.NSRange characterRange);
public virtual bool ShouldInteractWithUrl (UITextView textView, Foundation.NSUrl url, Foundation.NSRange characterRange, UITextItemInteraction interaction);
public virtual void WillDismissEditMenu (UITextView textView, IUIEditMenuInteractionAnimating aniamtor);
public virtual void WillDisplay (UITextView textView, UITextItem textItem, IUIContextMenuInteractionAnimating animator);
public virtual void WillEnd (UITextView textView, UITextItem textItem, IUIContextMenuInteractionAnimating animator);
public virtual void WillPresentEditMenu (UITextView textView, IUIEditMenuInteractionAnimating animator);

Type Changed: UIKit.IUITimingCurveProvider

Modified properties:

-public abstract UICubicTimingParameters CubicTimingParameters { get; }
+public virtual UICubicTimingParameters CubicTimingParameters { get; }
-public abstract UISpringTimingParameters SpringTimingParameters { get; }
+public virtual UISpringTimingParameters SpringTimingParameters { get; }
-public abstract UITimingCurveType TimingCurveType { get; }
+public virtual UITimingCurveType TimingCurveType { get; }

Type Changed: UIKit.IUIToolTipInteractionDelegate

Added method:

public virtual UIToolTipConfiguration GetConfiguration (UIToolTipInteraction interaction, CoreGraphics.CGPoint point);

Type Changed: UIKit.IUITraitChangeObservable

Modified methods:

-public abstract void UnregisterForTraitChanges (IUITraitChangeRegistration registration)
+public virtual void UnregisterForTraitChanges (IUITraitChangeRegistration registration)

Type Changed: UIKit.IUITraitDefinition

Added methods:

public static bool GetAffectsColorAppearance<T> ();
public static string GetIdentifier<T> ();
public static string GetName<T> ();

Type Changed: UIKit.IUITraitEnvironment

Modified properties:

-public abstract UITraitCollection TraitCollection { get; }
+public virtual UITraitCollection TraitCollection { get; }

Modified methods:

-public abstract void TraitCollectionDidChange (UITraitCollection previousTraitCollection)
+public virtual void TraitCollectionDidChange (UITraitCollection previousTraitCollection)

Type Changed: UIKit.IUITraitOverrides

Modified methods:

-public abstract bool ContainsTrait (IUITraitDefinition trait)
+public virtual bool ContainsTrait (IUITraitDefinition trait)
-public abstract void RemoveTrait (IUITraitDefinition trait)
+public virtual void RemoveTrait (IUITraitDefinition trait)

Type Changed: UIKit.IUIUserActivityRestoring

Modified methods:

-public abstract void RestoreUserActivityState (Foundation.NSUserActivity activity)
+public virtual void RestoreUserActivityState (Foundation.NSUserActivity activity)

Type Changed: UIKit.IUIVideoEditorControllerDelegate

Added methods:

public virtual void Failed (UIVideoEditorController editor, Foundation.NSError error);
public virtual void UserCancelled (UIVideoEditorController editor);
public virtual void VideoSaved (UIVideoEditorController editor, string editedVideoPath);

Type Changed: UIKit.IUIViewAnimating

Modified properties:

-public abstract System.Runtime.InteropServices.NFloat FractionComplete { get; set; }
+public virtual System.Runtime.InteropServices.NFloat FractionComplete { get; set; }
-public abstract bool Reversed { get; set; }
+public virtual bool Reversed { get; set; }
-public abstract bool Running { get; }
+public virtual bool Running { get; }
-public abstract UIViewAnimatingState State { get; }
+public virtual UIViewAnimatingState State { get; }

Modified methods:

-public abstract void FinishAnimation (UIViewAnimatingPosition finalPosition)
+public virtual void FinishAnimation (UIViewAnimatingPosition finalPosition)
-public abstract void PauseAnimation ()
+public virtual void PauseAnimation ()
-public abstract void StartAnimation ()
+public virtual void StartAnimation ()
-public abstract void StartAnimation (double delay)
+public virtual void StartAnimation (double delay)
-public abstract void StopAnimation (bool withoutFinishing)
+public virtual void StopAnimation (bool withoutFinishing)

Type Changed: UIKit.IUIViewControllerAnimatedTransitioning

Modified methods:

-public abstract void AnimateTransition (IUIViewControllerContextTransitioning transitionContext)
+public virtual void AnimateTransition (IUIViewControllerContextTransitioning transitionContext)
-public abstract double TransitionDuration (IUIViewControllerContextTransitioning transitionContext)
+public virtual double TransitionDuration (IUIViewControllerContextTransitioning transitionContext)

Added methods:

public virtual void AnimationEnded (bool transitionCompleted);
public virtual IUIViewImplicitlyAnimating GetInterruptibleAnimator (IUIViewControllerContextTransitioning transitionContext);

Type Changed: UIKit.IUIViewControllerContextTransitioning

Modified properties:

-public abstract UIView ContainerView { get; }
+public virtual UIView ContainerView { get; }
-public abstract bool IsAnimated { get; }
+public virtual bool IsAnimated { get; }
-public abstract bool IsInteractive { get; }
+public virtual bool IsInteractive { get; }
-public abstract UIModalPresentationStyle PresentationStyle { get; }
+public virtual UIModalPresentationStyle PresentationStyle { get; }
-public abstract CoreGraphics.CGAffineTransform TargetTransform { get; }
+public virtual CoreGraphics.CGAffineTransform TargetTransform { get; }
-public abstract bool TransitionWasCancelled { get; }
+public virtual bool TransitionWasCancelled { get; }

Modified methods:

-public abstract void CancelInteractiveTransition ()
+public virtual void CancelInteractiveTransition ()
-public abstract void CompleteTransition (bool didComplete)
+public virtual void CompleteTransition (bool didComplete)
-public abstract void FinishInteractiveTransition ()
+public virtual void FinishInteractiveTransition ()
-public abstract CoreGraphics.CGRect GetFinalFrameForViewController (UIViewController vc)
+public virtual CoreGraphics.CGRect GetFinalFrameForViewController (UIViewController vc)
-public abstract CoreGraphics.CGRect GetInitialFrameForViewController (UIViewController vc)
+public virtual CoreGraphics.CGRect GetInitialFrameForViewController (UIViewController vc)
-public abstract UIViewController GetViewControllerForKey (Foundation.NSString uiTransitionKey)
+public virtual UIViewController GetViewControllerForKey (Foundation.NSString uiTransitionKey)
-public abstract UIView GetViewFor (Foundation.NSString uiTransitionContextToOrFromKey)
+public virtual UIView GetViewFor (Foundation.NSString uiTransitionContextToOrFromKey)
-public abstract void PauseInteractiveTransition ()
+public virtual void PauseInteractiveTransition ()
-public abstract void UpdateInteractiveTransition (System.Runtime.InteropServices.NFloat percentComplete)
+public virtual void UpdateInteractiveTransition (System.Runtime.InteropServices.NFloat percentComplete)

Type Changed: UIKit.IUIViewControllerInteractiveTransitioning

Added properties:

public virtual UIViewAnimationCurve CompletionCurve { get; }
public virtual System.Runtime.InteropServices.NFloat CompletionSpeed { get; }
public virtual bool WantsInteractiveStart { get; }

Modified methods:

-public abstract void StartInteractiveTransition (IUIViewControllerContextTransitioning transitionContext)
+public virtual void StartInteractiveTransition (IUIViewControllerContextTransitioning transitionContext)

Type Changed: UIKit.IUIViewControllerPreviewing

Modified properties:

-public abstract UIGestureRecognizer PreviewingGestureRecognizerForFailureRelationship { get; }
+public virtual UIGestureRecognizer PreviewingGestureRecognizerForFailureRelationship { get; }
-public abstract CoreGraphics.CGRect SourceRect { get; set; }
+public virtual CoreGraphics.CGRect SourceRect { get; set; }
-public abstract UIView SourceView { get; }
+public virtual UIView SourceView { get; }
-public abstract Foundation.NSObject WeakDelegate { get; }
+public virtual Foundation.NSObject WeakDelegate { get; }

Type Changed: UIKit.IUIViewControllerPreviewingDelegate

Modified methods:

-public abstract void CommitViewController (IUIViewControllerPreviewing previewingContext, UIViewController viewControllerToCommit)
+public virtual void CommitViewController (IUIViewControllerPreviewing previewingContext, UIViewController viewControllerToCommit)
-public abstract UIViewController GetViewControllerForPreview (IUIViewControllerPreviewing previewingContext, CoreGraphics.CGPoint location)
+public virtual UIViewController GetViewControllerForPreview (IUIViewControllerPreviewing previewingContext, CoreGraphics.CGPoint location)

Type Changed: UIKit.IUIViewControllerTransitionCoordinator

Modified methods:

-public abstract bool AnimateAlongsideTransition (System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% animate, System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% completion)
+public virtual bool AnimateAlongsideTransition (System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% animate, System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% completion)
-public abstract bool AnimateAlongsideTransitionInView (UIView view, System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% animation, System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% completion)
+public virtual bool AnimateAlongsideTransitionInView (UIView view, System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% animation, System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% completion)
-public abstract void NotifyWhenInteractionChanges (System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% handler)
+public virtual void NotifyWhenInteractionChanges (System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% handler)
-public abstract void NotifyWhenInteractionEndsUsingBlock (System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% handler)
+public virtual void NotifyWhenInteractionEndsUsingBlock (System.Action%LESSERTHANREPLACEMENT%IUIViewControllerTransitionCoordinatorContext%GREATERTHANREPLACEMENT% handler)

Type Changed: UIKit.IUIViewControllerTransitionCoordinatorContext

Modified properties:

-public abstract UIViewAnimationCurve CompletionCurve { get; }
+public virtual UIViewAnimationCurve CompletionCurve { get; }
-public abstract System.Runtime.InteropServices.NFloat CompletionVelocity { get; }
+public virtual System.Runtime.InteropServices.NFloat CompletionVelocity { get; }
-public abstract UIView ContainerView { get; }
+public virtual UIView ContainerView { get; }
-public abstract bool InitiallyInteractive { get; }
+public virtual bool InitiallyInteractive { get; }
-public abstract bool IsAnimated { get; }
+public virtual bool IsAnimated { get; }
-public abstract bool IsCancelled { get; }
+public virtual bool IsCancelled { get; }
-public abstract bool IsInteractive { get; }
+public virtual bool IsInteractive { get; }
-public abstract bool IsInterruptible { get; }
+public virtual bool IsInterruptible { get; }
-public abstract System.Runtime.InteropServices.NFloat PercentComplete { get; }
+public virtual System.Runtime.InteropServices.NFloat PercentComplete { get; }
-public abstract UIModalPresentationStyle PresentationStyle { get; }
+public virtual UIModalPresentationStyle PresentationStyle { get; }
-public abstract double TransitionDuration { get; }
+public virtual double TransitionDuration { get; }

Modified methods:

-public abstract UIView GetTransitionViewControllerForKey (Foundation.NSString key)
+public virtual UIView GetTransitionViewControllerForKey (Foundation.NSString key)
-public abstract UIViewController GetViewControllerForKey (Foundation.NSString uiTransitionKey)
+public virtual UIViewController GetViewControllerForKey (Foundation.NSString uiTransitionKey)
-public abstract CoreGraphics.CGAffineTransform TargetTransform ()
+public virtual CoreGraphics.CGAffineTransform TargetTransform ()

Type Changed: UIKit.IUIViewControllerTransitioningDelegate

Added methods:

public virtual IUIViewControllerAnimatedTransitioning GetAnimationControllerForDismissedController (UIViewController dismissed);
public virtual IUIViewControllerAnimatedTransitioning GetAnimationControllerForPresentedController (UIViewController presented, UIViewController presenting, UIViewController source);
public virtual IUIViewControllerInteractiveTransitioning GetInteractionControllerForDismissal (IUIViewControllerAnimatedTransitioning animator);
public virtual IUIViewControllerInteractiveTransitioning GetInteractionControllerForPresentation (IUIViewControllerAnimatedTransitioning animator);
public virtual UIPresentationController GetPresentationControllerForPresentedViewController (UIViewController presentedViewController, UIViewController presentingViewController, UIViewController sourceViewController);

Type Changed: UIKit.IUIViewImplicitlyAnimating

Added methods:

public virtual void AddAnimations (System.Action animation);
public virtual void AddAnimations (System.Action animation, System.Runtime.InteropServices.NFloat delayFactor);
public virtual void AddCompletion (System.Action<UIViewAnimatingPosition> completion);
public virtual void ContinueAnimation (IUITimingCurveProvider parameters, System.Runtime.InteropServices.NFloat durationFactor);

Type Changed: UIKit.IUIWebViewDelegate

Added methods:

public virtual void LoadFailed (UIWebView webView, Foundation.NSError error);
public virtual void LoadStarted (UIWebView webView);
public virtual void LoadingFinished (UIWebView webView);
public virtual bool ShouldStartLoad (UIWebView webView, Foundation.NSUrlRequest request, UIWebViewNavigationType navigationType);

Type Changed: UIKit.IUIWindowSceneDelegate

Added property:

public virtual UIWindow Window { get; set; }

Added methods:

public virtual void DidUpdateCoordinateSpace (UIWindowScene windowScene, IUICoordinateSpace previousCoordinateSpace, UIInterfaceOrientation previousInterfaceOrientation, UITraitCollection previousTraitCollection);
public virtual void PerformAction (UIWindowScene windowScene, UIApplicationShortcutItem shortcutItem, System.Action<bool> completionHandler);
public virtual void UserDidAcceptCloudKitShare (UIWindowScene windowScene, CloudKit.CKShareMetadata cloudKitShareMetadata);

Type Changed: UIKit.UIControl

Added method:

public virtual void PerformPrimaryAction ();

Type Changed: UIKit.UIDatePickerMode

Added value:

YearAndMonth = 4,

Type Changed: UIKit.UIDocument

Added method:

public virtual void AccommodatePresentedItemEviction (System.Action<Foundation.NSError> completionHandler);

Type Changed: UIKit.UIDragItem

Added method:

public virtual void SetNeedsDropPreviewUpdate ();

Type Changed: UIKit.UIFeedbackGenerator

Added interfaces:

ObjCRuntime.INativeObject
System.IDisposable
IUIInteraction

Added property:

public virtual UIView View { get; }

Added methods:

public virtual void DidMoveToView (UIView view);
protected override void Dispose (bool disposing);
public static UIFeedbackGenerator GetFeedbackGenerator (UIView forView);
public virtual void WillMoveToView (UIView view);

Type Changed: UIKit.UIHoverGestureRecognizer

Added property:

public virtual System.Runtime.InteropServices.NFloat RollAngle { get; }

Type Changed: UIKit.UIImpactFeedbackGenerator

Added methods:

public static UIImpactFeedbackGenerator GetFeedbackGenerator (UIView forView);
public static UIImpactFeedbackGenerator GetFeedbackGenerator (UIImpactFeedbackStyle style, UIView view);
public virtual void ImpactOccurred (CoreGraphics.CGPoint atLocation);
public virtual void ImpactOccurred (System.Runtime.InteropServices.NFloat intensity, CoreGraphics.CGPoint location);

Type Changed: UIKit.UIMenu

Added property:

public virtual UIMenuDisplayPreferences DisplayPreferences { get; set; }

Type Changed: UIKit.UINotificationFeedbackGenerator

Added methods:

public static UINotificationFeedbackGenerator GetFeedbackGenerator (UIView forView);
public virtual void NotificationOccurred (UINotificationFeedbackType notificationType, CoreGraphics.CGPoint location);

Type Changed: UIKit.UIPencilInteraction

Added constructor:

public UIPencilInteraction (IUIPencilInteractionDelegate delegate);

Added properties:

public static UIPencilPreferredAction PreferredSqueezeAction { get; }
public static bool PrefersHoverToolPreview { get; }

Type Changed: UIKit.UIPencilInteractionDelegate

Added methods:

public virtual void DidReceiveSqueeze (UIPencilInteraction interaction, UIPencilInteractionSqueeze squeeze);
public virtual void DidReceiveTap (UIPencilInteraction interaction, UIPencilInteractionTap tap);

Type Changed: UIKit.UIPencilInteractionDelegate_Extensions

Added methods:

public static void DidReceiveSqueeze (this IUIPencilInteractionDelegate This, UIPencilInteraction interaction, UIPencilInteractionSqueeze squeeze);
public static void DidReceiveTap (this IUIPencilInteractionDelegate This, UIPencilInteraction interaction, UIPencilInteractionTap tap);

Type Changed: UIKit.UIPencilPreferredAction

Added values:

RunSystemShortcut = 6,
ShowContextualPalette = 5,

Type Changed: UIKit.UIPresentationController

Added methods:

public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, ObjCRuntime.Selector action);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

Type Changed: UIKit.UIScrollView

Added properties:

public virtual bool BouncesHorizontally { get; set; }
public virtual bool BouncesVertically { get; set; }
public virtual CoreGraphics.CGPoint ContentAlignmentPoint { get; set; }
public virtual bool ScrollAnimating { get; }
public virtual bool TransfersHorizontalScrollingToParent { get; set; }
public virtual bool TransfersVerticalScrollingToParent { get; set; }
public virtual bool ZoomAnimating { get; }

Added methods:

public virtual void StopScrollingAndZooming ();
public virtual void WithScrollIndicatorsShown (System.Action forContentOffsetChanges);

Type Changed: UIKit.UISelectionFeedbackGenerator

Added methods:

public static UISelectionFeedbackGenerator GetFeedbackGenerator (UIView forView);
public virtual void SelectionChanged (CoreGraphics.CGPoint location);

Type Changed: UIKit.UITextContentType

Added properties:

public static Foundation.NSString CellularEid { get; }
public static Foundation.NSString CellularImei { get; }

Type Changed: UIKit.UITextField

Added method:

public virtual CoreGraphics.CGAffineTransform GetCaretTransform (UITextPosition forPosition);

Type Changed: UIKit.UITextInput_Extensions

Added method:

public static CoreGraphics.CGAffineTransform GetCaretTransform (this IUITextInput This, UITextPosition forPosition);

Type Changed: UIKit.UITextSelectionRect

Added property:

public virtual CoreGraphics.CGAffineTransform Transform { get; }

Type Changed: UIKit.UITextView

Obsoleted properties:

 [Obsolete ("Use 'TypingAttributes2' instead, because this property will return null instead of an empty dictionary.")]
 public virtual Foundation.NSDictionary TypingAttributes { get; set; }

Added property:

public Foundation.NSDictionary TypingAttributes2 { get; set; }

Added method:

public virtual CoreGraphics.CGAffineTransform GetCaretTransform (UITextPosition forPosition);

Type Changed: UIKit.UITouch

Added property:

public virtual System.Runtime.InteropServices.NFloat RollAngle { get; }

Type Changed: UIKit.UITouchProperties

Added value:

Roll = 16,

Type Changed: UIKit.UITraitChangeObservable_Extensions

Added methods:

public static IUITraitChangeRegistration RegisterForTraitChanges (this IUITraitChangeObservable This, ObjCRuntime.Class[] traits, ObjCRuntime.Selector action);
public static IUITraitChangeRegistration RegisterForTraitChanges (this IUITraitChangeObservable This, ObjCRuntime.Class[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public static IUITraitChangeRegistration RegisterForTraitChanges (this IUITraitChangeObservable This, ObjCRuntime.Class[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

Type Changed: UIKit.UIView

Added methods:

public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, ObjCRuntime.Selector action);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

Type Changed: UIKit.UIViewController

Added methods:

public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, ObjCRuntime.Selector action);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

Type Changed: UIKit.UIWindowScene

Added methods:

public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, ObjCRuntime.Selector action);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (ObjCRuntime.Class[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

New Type: UIKit.IUIItemProviderReadingAugmentationProviding

public interface IUIItemProviderReadingAugmentationProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public static string[] GetAdditionalLeadingReadableTypeIdentifiersForItemProvider<T> ();
	public static string[] GetAdditionalTrailingReadableTypeIdentifiersForItemProvider<T> ();
	public static Foundation.NSObject GetTypeIdentifier<T> (Foundation.NSData data, string typeIdentifier, ObjCRuntime.Class requestedClass, out Foundation.NSError outError);
}

New Type: UIKit.NSAttributedStringDocumentReadingOptions

public class NSAttributedStringDocumentReadingOptions : Foundation.DictionaryContainer {
	// constructors
	public NSAttributedStringDocumentReadingOptions ();
	public NSAttributedStringDocumentReadingOptions (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSStringEncoding? CharacterEncoding { get; set; }
	public Foundation.NSDictionary DefaultAttributes { get; set; }
	public NSAttributedStringDocumentType? DocumentType { get; set; }
	public NSTextScalingType? SourceTextScaling { get; set; }
	public NSTextScalingType? TargetTextScaling { get; set; }
}

New Type: UIKit.NSAttributedStringDocumentType

[Serializable]
public enum NSAttributedStringDocumentType {
	DocFormat = 5,
	Html = 3,
	MacSimple = 4,
	OfficeOpenXml = 7,
	OpenDocument = 9,
	Plain = 0,
	Rtf = 1,
	Rtfd = 2,
	Unknown = -1,
	WebArchive = 8,
	WordML = 6,
}

New Type: UIKit.NSAttributedStringDocumentTypeExtensions

public static class NSAttributedStringDocumentTypeExtensions {
	// methods
	public static Foundation.NSString GetConstant (this NSAttributedStringDocumentType self);
	public static NSAttributedStringDocumentType GetValue (Foundation.NSString constant);
}

New Type: UIKit.UICanvasFeedbackGenerator

public class UICanvasFeedbackGenerator : UIKit.UIFeedbackGenerator {
	// constructors
	protected UICanvasFeedbackGenerator (Foundation.NSObjectFlag t);
	protected UICanvasFeedbackGenerator (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual void AlignmentOccurred (CoreGraphics.CGPoint atLocation);
	public static UICanvasFeedbackGenerator GetFeedbackGenerator (UIView forView);
	public virtual void PathCompleted (CoreGraphics.CGPoint atLocation);
}

New Type: UIKit.UIMenuDisplayPreferences

public class UIMenuDisplayPreferences : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public UIMenuDisplayPreferences ();
	public UIMenuDisplayPreferences (Foundation.NSCoder coder);
	protected UIMenuDisplayPreferences (Foundation.NSObjectFlag t);
	protected UIMenuDisplayPreferences (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IntPtr MaximumNumberOfTitleLines { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: UIKit.UIPencilHoverPose

public class UIPencilHoverPose : Foundation.NSObject {
	// constructors
	protected UIPencilHoverPose (Foundation.NSObjectFlag t);
	protected UIPencilHoverPose (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual System.Runtime.InteropServices.NFloat AltitudeAngle { get; }
	public virtual System.Runtime.InteropServices.NFloat AzimuthAngle { get; }
	public virtual CoreGraphics.CGVector AzimuthUnitVector { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreGraphics.CGPoint Location { get; }
	public virtual System.Runtime.InteropServices.NFloat RollAngle { get; }
	public virtual System.Runtime.InteropServices.NFloat ZOffset { get; }
}

New Type: UIKit.UIPencilInteractionPhase

[Serializable]
public enum UIPencilInteractionPhase {
	Began = 0,
	Cancelled = 3,
	Changed = 1,
	Ended = 2,
}

New Type: UIKit.UIPencilInteractionSqueeze

public class UIPencilInteractionSqueeze : Foundation.NSObject {
	// constructors
	protected UIPencilInteractionSqueeze (Foundation.NSObjectFlag t);
	protected UIPencilInteractionSqueeze (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual UIPencilHoverPose HoverPose { get; }
	public virtual UIPencilInteractionPhase Phase { get; }
	public virtual double Timestamp { get; }
}

New Type: UIKit.UIPencilInteractionTap

public class UIPencilInteractionTap : Foundation.NSObject {
	// constructors
	protected UIPencilInteractionTap (Foundation.NSObjectFlag t);
	protected UIPencilInteractionTap (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual UIPencilHoverPose HoverPose { get; }
	public virtual double Timestamp { get; }
}

New Type: UIKit.UIStandardTextCursorView

public class UIStandardTextCursorView : UIKit.UIView, ObjCRuntime.INativeObject, System.IDisposable, IUICoordinateSpace, IUITextCursorView {
	// constructors
	public UIStandardTextCursorView (CoreGraphics.CGRect frame);
	public UIStandardTextCursorView (Foundation.NSCoder coder);
	protected UIStandardTextCursorView (Foundation.NSObjectFlag t);
	protected UIStandardTextCursorView (ObjCRuntime.NativeHandle handle);
	// properties
	public static UIStandardTextCursorView.UIStandardTextCursorViewAppearance Appearance { get; }
	public virtual bool Blinking { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public static UIStandardTextCursorView.UIStandardTextCursorViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual CoreGraphics.CGPoint ConvertPointFromCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace);
	public virtual CoreGraphics.CGPoint ConvertPointToCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace);
	public virtual CoreGraphics.CGRect ConvertRectFromCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace);
	public virtual CoreGraphics.CGRect ConvertRectToCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace);
	public static UIStandardTextCursorView.UIStandardTextCursorViewAppearance GetAppearance<T> ();
	public static UIStandardTextCursorView.UIStandardTextCursorViewAppearance GetAppearance<T> (UITraitCollection traits);
	public static UIStandardTextCursorView.UIStandardTextCursorViewAppearance GetAppearance (UITraitCollection traits);
	public static UIStandardTextCursorView.UIStandardTextCursorViewAppearance GetAppearance<T> (UITraitCollection traits, System.Type[] containers);
	public static UIStandardTextCursorView.UIStandardTextCursorViewAppearance GetAppearance (UITraitCollection traits, System.Type[] containers);
	public virtual void ResetBlinkAnimation ();

	// inner types
	public class UIStandardTextCursorViewAppearance : UIKit.UIView+UIViewAppearance {
		// constructors
		protected UIStandardTextCursorView.UIStandardTextCursorViewAppearance (IntPtr handle);
	}
}

New Type: UIKit.UITextCursorDropPositionAnimator

public class UITextCursorDropPositionAnimator : Foundation.NSObject {
	// constructors
	protected UITextCursorDropPositionAnimator (Foundation.NSObjectFlag t);
	protected UITextCursorDropPositionAnimator (ObjCRuntime.NativeHandle handle);
	public UITextCursorDropPositionAnimator (IUITextCursorView cursorView, IUITextInput textInput);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IUITextCursorView CursorView { get; }
	public virtual IUITextInput TextInput { get; }
	// methods
	public virtual void AnimateAlongsideChanges (System.Action animation, System.Action completion);
	public virtual System.Threading.Tasks.Task AnimateAlongsideChangesAsync (System.Action animation);
	public virtual void PlaceCursor (UITextPosition atPosition, bool animated);
	public virtual void SetCursorVisible (bool visible, bool animated);
}

Namespace UserNotifications

Type Changed: UserNotifications.IUNUserNotificationCenterDelegate

Added methods:

public virtual void DidReceiveNotificationResponse (UNUserNotificationCenter center, UNNotificationResponse response, System.Action completionHandler);
public virtual void OpenSettings (UNUserNotificationCenter center, UNNotification notification);
public virtual void WillPresentNotification (UNUserNotificationCenter center, UNNotification notification, System.Action<UNNotificationPresentationOptions> completionHandler);

Namespace UserNotificationsUI

Type Changed: UserNotificationsUI.IUNNotificationContentExtension

Added properties:

public virtual CoreGraphics.CGRect MediaPlayPauseButtonFrame { get; }
public virtual UIKit.UIColor MediaPlayPauseButtonTintColor { get; }
public virtual UNNotificationContentExtensionMediaPlayPauseButtonType MediaPlayPauseButtonType { get; }

Modified methods:

-public abstract void DidReceiveNotification (UserNotifications.UNNotification notification)
+public virtual void DidReceiveNotification (UserNotifications.UNNotification notification)

Added methods:

public virtual void DidReceiveNotificationResponse (UserNotifications.UNNotificationResponse response, System.Action<UNNotificationContentExtensionResponseOption> completion);
public virtual void PauseMedia ();
public virtual void PlayMedia ();

Namespace VideoSubscriberAccount

Type Changed: VideoSubscriberAccount.IVSAccountManagerDelegate

Modified methods:

-public abstract void DismissViewController (VSAccountManager accountManager, UIKit.UIViewController viewController)
+public virtual void DismissViewController (VSAccountManager accountManager, UIKit.UIViewController viewController)
-public abstract void PresentViewController (VSAccountManager accountManager, UIKit.UIViewController viewController)
+public virtual void PresentViewController (VSAccountManager accountManager, UIKit.UIViewController viewController)

Added method:

public virtual bool ShouldAuthenticateAccountProvider (VSAccountManager accountManager, string accountProviderIdentifier);

Type Changed: VideoSubscriberAccount.VSUserAccount

Added property:

public virtual VSAppleSubscription AppleSubscription { get; set; }

New Type: VideoSubscriberAccount.VSAppleSubscription

public class VSAppleSubscription : Foundation.NSObject {
	// constructors
	protected VSAppleSubscription (Foundation.NSObjectFlag t);
	protected VSAppleSubscription (ObjCRuntime.NativeHandle handle);
	public VSAppleSubscription (string customerId, string[] productCodes);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string CustomerId { get; set; }
	public virtual string[] ProductCodes { get; set; }
}

Namespace Vision

Type Changed: Vision.IVNFaceObservationAccepting

Modified properties:

-public abstract VNFaceObservation[] InputFaceObservations { get; set; }
+public virtual VNFaceObservation[] InputFaceObservations { get; set; }

Type Changed: Vision.IVNRequestProgressProviding

Modified properties:

-public abstract bool Indeterminate { get; }
+public virtual bool Indeterminate { get; }
-public abstract VNRequestProgressHandler ProgressHandler { get; set; }
+public virtual VNRequestProgressHandler ProgressHandler { get; set; }

Type Changed: Vision.IVNRequestRevisionProviding

Modified properties:

-public abstract VNRequestRevision RequestRevision { get; }
+public virtual VNRequestRevision RequestRevision { get; }

Type Changed: Vision.VNBarcodeObservation

Added properties:

public virtual bool IsColorInverted { get; }
public virtual bool IsGS1DataCarrier { get; }
public virtual Foundation.NSData PayloadData { get; }
public virtual VNBarcodeCompositeType SupplementalCompositeType { get; }
public virtual Foundation.NSData SupplementalPayloadData { get; }
public virtual string SupplementalPayloadString { get; }

Type Changed: Vision.VNBarcodeSymbology

Added value:

MsiPlessey = 23,

Type Changed: Vision.VNClassifyImageRequestRevision

Added value:

Two = 2,

Type Changed: Vision.VNDetectBarcodesRequest

Added property:

public virtual bool CoalesceCompositeSymbologies { get; set; }

Type Changed: Vision.VNDetectBarcodesRequestRevision

Added values:

Four = 4,
Three = 3,

Type Changed: Vision.VNDetectFaceCaptureQualityRequestRevision

Added value:

Three = 3,

Type Changed: Vision.VNDetectHumanBodyPoseRequest

Added methods:

public virtual VNHumanBodyPoseObservationJointName[] GetSupportedJointNames (out Foundation.NSError error);
public virtual VNHumanBodyPoseObservationJointsGroupName[] GetSupportedJointsGroupNames (out Foundation.NSError error);

Type Changed: Vision.VNDetectHumanHandPoseRequest

Added methods:

public virtual VNHumanHandPoseObservationJointName[] GetSupportedJointNames (out Foundation.NSError error);
public virtual VNHumanHandPoseObservationJointsGroupName[] GetSupportedJointsGroupNames (out Foundation.NSError error);

Type Changed: Vision.VNErrorCode

Added values:

UnsupportedComputeDevice = 22,
UnsupportedComputeStage = 21,

Type Changed: Vision.VNGenerateAttentionBasedSaliencyImageRequestRevision

Added value:

Two = 2,

Type Changed: Vision.VNGenerateImageFeaturePrintRequestRevision

Added value:

Two = 2,

Type Changed: Vision.VNGenerateObjectnessBasedSaliencyImageRequestRevision

Added value:

Two = 2,

Type Changed: Vision.VNImageRequestHandler

Added constructors:

public VNImageRequestHandler (CoreMedia.CMSampleBuffer sampleBuffer, AVFoundation.AVDepthData depthData, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options);
public VNImageRequestHandler (CoreVideo.CVPixelBuffer pixelBuffer, AVFoundation.AVDepthData depthData, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options);

Type Changed: Vision.VNRectangleObservation

Added method:

public static VNRectangleObservation FromRectangleObservation (VNRectangleObservationRequestRevision requestRevision, CoreGraphics.CGPoint topLeft, CoreGraphics.CGPoint topRight, CoreGraphics.CGPoint bottomRight, CoreGraphics.CGPoint bottomLeft);

Type Changed: Vision.VNRequest

Added methods:

public virtual CoreML.IMLComputeDeviceProtocol GetComputeDevice (string computeStage);
public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSArray<CoreML.IMLComputeDeviceProtocol>> GetSupportedComputeDevices (out Foundation.NSError error);
public virtual void SetComputeDevice (CoreML.IMLComputeDeviceProtocol computeDevice, string computeStage);

Type Changed: Vision.VNTrackingRequest

Added method:

public virtual UIntPtr GetSupportedNumberOfTrackers (out Foundation.NSError error);

New Type: Vision.VNAnimalBodyPoseObservation

public class VNAnimalBodyPoseObservation : Vision.VNRecognizedPointsObservation {
	// constructors
	public VNAnimalBodyPoseObservation (Foundation.NSCoder coder);
	protected VNAnimalBodyPoseObservation (Foundation.NSObjectFlag t);
	protected VNAnimalBodyPoseObservation (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual VNAnimalBodyPoseObservationJointsGroupName[] AvailableJointGroupNames { get; }
	public virtual VNAnimalBodyPoseObservationJointName[] AvailableJointNames { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual VNRecognizedPoint GetRecognizedPoint (VNAnimalBodyPoseObservationJointName jointName, out Foundation.NSError error);
	public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint> GetRecognizedPoints (VNAnimalBodyPoseObservationJointsGroupName jointsGroupName, out Foundation.NSError error);
}

New Type: Vision.VNAnimalBodyPoseObservationJointName

[Serializable]
public enum VNAnimalBodyPoseObservationJointName {
	LeftBackElbow = 17,
	LeftBackKnee = 19,
	LeftBackPaw = 21,
	LeftEarBottom = 5,
	LeftEarMiddle = 3,
	LeftEarTop = 1,
	LeftEye = 7,
	LeftFrontElbow = 11,
	LeftFrontKnee = 13,
	LeftFrontPaw = 15,
	Neck = 10,
	None = 0,
	Nose = 9,
	RightBackElbow = 18,
	RightBackKnee = 20,
	RightBackPaw = 22,
	RightEarBottom = 6,
	RightEarMiddle = 4,
	RightEarTop = 2,
	RightEye = 8,
	RightFrontElbow = 12,
	RightFrontKnee = 14,
	RightFrontPaw = 16,
	TailBottom = 25,
	TailMiddle = 24,
	TailTop = 23,
}

New Type: Vision.VNAnimalBodyPoseObservationJointNameExtensions

public static class VNAnimalBodyPoseObservationJointNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNAnimalBodyPoseObservationJointName self);
	public static VNAnimalBodyPoseObservationJointName GetValue (Foundation.NSString constant);
}

New Type: Vision.VNAnimalBodyPoseObservationJointsGroupName

[Serializable]
public enum VNAnimalBodyPoseObservationJointsGroupName {
	All = 6,
	Forelegs = 3,
	Head = 1,
	Hindlegs = 4,
	None = 0,
	Tail = 5,
	Trunk = 2,
}

New Type: Vision.VNAnimalBodyPoseObservationJointsGroupNameExtensions

public static class VNAnimalBodyPoseObservationJointsGroupNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNAnimalBodyPoseObservationJointsGroupName self);
	public static VNAnimalBodyPoseObservationJointsGroupName GetValue (Foundation.NSString constant);
}

New Type: Vision.VNBarcodeCompositeType

[Serializable]
public enum VNBarcodeCompositeType {
	Gs1TypeA = 2,
	Gs1TypeB = 3,
	Gs1TypeC = 4,
	Linked = 1,
	None = 0,
}

New Type: Vision.VNComputeStage

[Serializable]
public enum VNComputeStage {
	Main = 1,
	None = 0,
	PostProcessing = 2,
}

New Type: Vision.VNComputeStageExtensions

public static class VNComputeStageExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNComputeStage self);
	public static VNComputeStage GetValue (Foundation.NSString constant);
}

New Type: Vision.VNDetectAnimalBodyPoseRequest

public class VNDetectAnimalBodyPoseRequest : Vision.VNImageBasedRequest {
	// constructors
	protected VNDetectAnimalBodyPoseRequest (Foundation.NSObjectFlag t);
	protected VNDetectAnimalBodyPoseRequest (ObjCRuntime.NativeHandle handle);
	public VNDetectAnimalBodyPoseRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual VNAnimalBodyPoseObservation[] Results { get; }
	// methods
	public virtual VNAnimalBodyPoseObservationJointName[] GetSupportedJointNames (out Foundation.NSError error);
	public virtual VNAnimalBodyPoseObservationJointsGroupName[] GetSupportedJointsGroupNames (out Foundation.NSError error);
}

New Type: Vision.VNDetectHumanBodyPose3DRequest

public class VNDetectHumanBodyPose3DRequest : Vision.VNStatefulRequest {
	// constructors
	public VNDetectHumanBodyPose3DRequest ();
	protected VNDetectHumanBodyPose3DRequest (Foundation.NSObjectFlag t);
	protected VNDetectHumanBodyPose3DRequest (ObjCRuntime.NativeHandle handle);
	public VNDetectHumanBodyPose3DRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static VNDetectHumanBodyPose3DRequestRevision CurrentRevision { get; }
	public static VNDetectHumanBodyPose3DRequestRevision DefaultRevision { get; }
	public virtual VNHumanBodyPose3DObservation[] Results { get; }
	public virtual VNDetectHumanBodyPose3DRequestRevision Revision { get; set; }
	public static VNDetectHumanBodyPose3DRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
	// methods
	public virtual VNHumanBodyPose3DObservationJointName[] GetSupportedJointNames (out Foundation.NSError error);
	public virtual VNHumanBodyPose3DObservationJointsGroupName[] GetSupportedJointsGroupNames (out Foundation.NSError error);
}

New Type: Vision.VNDetectHumanBodyPose3DRequestRevision

[Serializable]
public enum VNDetectHumanBodyPose3DRequestRevision {
	One = 1,
}

New Type: Vision.VNGenerateForegroundInstanceMaskRequest

public class VNGenerateForegroundInstanceMaskRequest : Vision.VNImageBasedRequest {
	// constructors
	protected VNGenerateForegroundInstanceMaskRequest (Foundation.NSObjectFlag t);
	protected VNGenerateForegroundInstanceMaskRequest (ObjCRuntime.NativeHandle handle);
	public VNGenerateForegroundInstanceMaskRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual VNInstanceMaskObservation[] Results { get; }
}

New Type: Vision.VNGeneratePersonInstanceMaskRequest

public class VNGeneratePersonInstanceMaskRequest : Vision.VNImageBasedRequest {
	// constructors
	protected VNGeneratePersonInstanceMaskRequest (Foundation.NSObjectFlag t);
	protected VNGeneratePersonInstanceMaskRequest (ObjCRuntime.NativeHandle handle);
	public VNGeneratePersonInstanceMaskRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual VNInstanceMaskObservation[] Results { get; }
}

New Type: Vision.VNHumanBodyPose3DObservation

public class VNHumanBodyPose3DObservation : Vision.VNRecognizedPoints3DObservation {
	// constructors
	public VNHumanBodyPose3DObservation (Foundation.NSCoder coder);
	protected VNHumanBodyPose3DObservation (Foundation.NSObjectFlag t);
	protected VNHumanBodyPose3DObservation (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual VNHumanBodyPose3DObservationJointName[] AvailableJointNames { get; }
	public virtual VNHumanBodyPose3DObservationJointsGroupName[] AvailableJointsGroupNames { get; }
	public virtual float BodyHeight { get; }
	public virtual CoreGraphics.NMatrix4 CameraOriginMatrix { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual VNHumanBodyPose3DObservationHeightEstimation HeightEstimation { get; }
	// methods
	public virtual bool GetCameraRelativePosition (out CoreGraphics.NMatrix4 modelPositionOut, VNHumanBodyPose3DObservationJointName jointName, out Foundation.NSError error);
	public virtual VNHumanBodyPose3DObservationJointName GetParentJointName (VNHumanBodyPose3DObservationJointName jointName);
	public virtual VNPoint GetPointInImage (VNHumanBodyPose3DObservationJointName jointName, out Foundation.NSError error);
	public virtual VNHumanBodyRecognizedPoint3D GetRecognizedPoint (VNHumanBodyPose3DObservationJointName jointName, out Foundation.NSError error);
	public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNHumanBodyRecognizedPoint3D> GetRecognizedPoints (VNHumanBodyPose3DObservationJointsGroupName jointName, out Foundation.NSError error);
}

New Type: Vision.VNHumanBodyPose3DObservationHeightEstimation

[Serializable]
public enum VNHumanBodyPose3DObservationHeightEstimation {
	Measured = 1,
	Reference = 0,
}

New Type: Vision.VNHumanBodyPose3DObservationJointName

[Serializable]
public enum VNHumanBodyPose3DObservationJointName {
	CenterHead = 11,
	CenterShoulder = 10,
	LeftAnkle = 8,
	LeftElbow = 14,
	LeftHip = 6,
	LeftKnee = 7,
	LeftShoulder = 13,
	LeftWrist = 15,
	None = 0,
	RightAnkle = 4,
	RightElbow = 16,
	RightHip = 2,
	RightKnee = 3,
	RightShoulder = 5,
	RightWrist = 17,
	Root = 1,
	Spine = 9,
	TopHead = 12,
}

New Type: Vision.VNHumanBodyPose3DObservationJointNameExtensions

public static class VNHumanBodyPose3DObservationJointNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNHumanBodyPose3DObservationJointName self);
	public static VNHumanBodyPose3DObservationJointName GetValue (Foundation.NSString constant);
}

New Type: Vision.VNHumanBodyPose3DObservationJointsGroupName

[Serializable]
public enum VNHumanBodyPose3DObservationJointsGroupName {
	All = 7,
	Head = 1,
	LeftArm = 3,
	LeftLeg = 5,
	None = 0,
	RightArm = 4,
	RightLeg = 6,
	Torso = 2,
}

New Type: Vision.VNHumanBodyPose3DObservationJointsGroupNameExtensions

public static class VNHumanBodyPose3DObservationJointsGroupNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNHumanBodyPose3DObservationJointsGroupName self);
	public static VNHumanBodyPose3DObservationJointsGroupName GetValue (Foundation.NSString constant);
}

New Type: Vision.VNHumanBodyRecognizedPoint3D

public class VNHumanBodyRecognizedPoint3D : Vision.VNRecognizedPoint3D {
	// constructors
	public VNHumanBodyRecognizedPoint3D (CoreGraphics.NMatrix4 position);
	public VNHumanBodyRecognizedPoint3D (Foundation.NSCoder coder);
	protected VNHumanBodyRecognizedPoint3D (Foundation.NSObjectFlag t);
	protected VNHumanBodyRecognizedPoint3D (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreGraphics.NMatrix4 LocalPosition { get; }
	public virtual VNHumanBodyPose3DObservationJointName ParentJoint { get; }
}

New Type: Vision.VNInstanceMaskObservation

public class VNInstanceMaskObservation : Vision.VNObservation {
	// constructors
	public VNInstanceMaskObservation (Foundation.NSCoder coder);
	protected VNInstanceMaskObservation (Foundation.NSObjectFlag t);
	protected VNInstanceMaskObservation (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual Foundation.NSIndexSet AllInstances { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreVideo.CVPixelBuffer InstanceMask { get; }
	// methods
	public virtual CoreVideo.CVPixelBuffer GenerateMask (Foundation.NSIndexSet instances, out Foundation.NSError error);
	public virtual CoreVideo.CVPixelBuffer GenerateMaskedImage (Foundation.NSIndexSet instances, VNImageRequestHandler requestHandler, bool cropResult, out Foundation.NSError error);
	public virtual CoreVideo.CVPixelBuffer GenerateScaledMask (Foundation.NSIndexSet instances, VNImageRequestHandler requestHandler, out Foundation.NSError error);
}

New Type: Vision.VNPoint3D

public class VNPoint3D : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public VNPoint3D (CoreGraphics.NMatrix4 position);
	public VNPoint3D (Foundation.NSCoder coder);
	protected VNPoint3D (Foundation.NSObjectFlag t);
	protected VNPoint3D (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreGraphics.NMatrix4 Position { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Vision.VNRecognizedPoint3D

public class VNRecognizedPoint3D : Vision.VNPoint3D {
	// constructors
	public VNRecognizedPoint3D (CoreGraphics.NMatrix4 position);
	public VNRecognizedPoint3D (Foundation.NSCoder coder);
	protected VNRecognizedPoint3D (Foundation.NSObjectFlag t);
	protected VNRecognizedPoint3D (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static Foundation.NSString GroupKeyAll { get; }
	public virtual string Identifier { get; }
}

New Type: Vision.VNRecognizedPoints3DObservation

public class VNRecognizedPoints3DObservation : Vision.VNObservation {
	// constructors
	public VNRecognizedPoints3DObservation (Foundation.NSCoder coder);
	protected VNRecognizedPoints3DObservation (Foundation.NSObjectFlag t);
	protected VNRecognizedPoints3DObservation (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual Foundation.NSString[] AvailableGroupKeys { get; }
	public virtual Foundation.NSString[] AvailableKeys { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual VNRecognizedPoint3D GetRecognizedPoint (Foundation.NSString pointKey, out Foundation.NSError error);
	public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint3D> GetRecognizedPoints (Foundation.NSString groupKey, out Foundation.NSError error);
}

New Type: Vision.VNTrackHomographicImageRegistrationRequest

public class VNTrackHomographicImageRegistrationRequest : Vision.VNStatefulRequest {
	// constructors
	public VNTrackHomographicImageRegistrationRequest ();
	protected VNTrackHomographicImageRegistrationRequest (Foundation.NSObjectFlag t);
	protected VNTrackHomographicImageRegistrationRequest (ObjCRuntime.NativeHandle handle);
	public VNTrackHomographicImageRegistrationRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static VNTrackHomographicImageRegistrationRequestRevision CurrentRevision { get; }
	public static VNTrackHomographicImageRegistrationRequestRevision DefaultRevision { get; }
	public virtual VNImageHomographicAlignmentObservation[] Results { get; }
	public virtual VNTrackHomographicImageRegistrationRequestRevision Revision { get; set; }
	public static VNTrackHomographicImageRegistrationRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
}

New Type: Vision.VNTrackHomographicImageRegistrationRequestRevision

[Serializable]
public enum VNTrackHomographicImageRegistrationRequestRevision {
	One = 1,
}

New Type: Vision.VNTrackOpticalFlowRequest

public class VNTrackOpticalFlowRequest : Vision.VNStatefulRequest {
	// constructors
	public VNTrackOpticalFlowRequest ();
	protected VNTrackOpticalFlowRequest (Foundation.NSObjectFlag t);
	protected VNTrackOpticalFlowRequest (ObjCRuntime.NativeHandle handle);
	public VNTrackOpticalFlowRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual VNTrackOpticalFlowRequestComputationAccuracy ComputationAccuracy { get; set; }
	public virtual bool KeepNetworkOutput { get; set; }
	public virtual uint OutputPixelFormat { get; set; }
	public virtual VNPixelBufferObservation[] Results { get; }
}

New Type: Vision.VNTrackOpticalFlowRequestComputationAccuracy

[Serializable]
public enum VNTrackOpticalFlowRequestComputationAccuracy {
	High = 2,
	Low = 0,
	Medium = 1,
	VeryHigh = 3,
}

New Type: Vision.VNTrackOpticalFlowRequestRevision

[Serializable]
public enum VNTrackOpticalFlowRequestRevision {
	One = 1,
}

New Type: Vision.VNTrackTranslationalImageRegistrationRequest

public class VNTrackTranslationalImageRegistrationRequest : Vision.VNStatefulRequest {
	// constructors
	public VNTrackTranslationalImageRegistrationRequest ();
	protected VNTrackTranslationalImageRegistrationRequest (Foundation.NSObjectFlag t);
	protected VNTrackTranslationalImageRegistrationRequest (ObjCRuntime.NativeHandle handle);
	public VNTrackTranslationalImageRegistrationRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static VNTrackTranslationalImageRegistrationRequestRevision CurrentRevision { get; }
	public static VNTrackTranslationalImageRegistrationRequestRevision DefaultRevision { get; }
	public virtual VNImageTranslationAlignmentObservation[] Results { get; }
	public virtual VNTrackTranslationalImageRegistrationRequestRevision Revision { get; set; }
	public static VNTrackTranslationalImageRegistrationRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
}

New Type: Vision.VNTrackTranslationalImageRegistrationRequestRevision

[Serializable]
public enum VNTrackTranslationalImageRegistrationRequestRevision {
	One = 1,
}

Namespace VisionKit

Type Changed: VisionKit.IVNDocumentCameraViewControllerDelegate

Added methods:

public virtual void DidCancel (VNDocumentCameraViewController controller);
public virtual void DidFail (VNDocumentCameraViewController controller, Foundation.NSError error);
public virtual void DidFinish (VNDocumentCameraViewController controller, VNDocumentCameraScan scan);

Namespace WatchConnectivity

Type Changed: WatchConnectivity.IWCSessionDelegate

Modified methods:

-public abstract void ActivationDidComplete (WCSession session, WCSessionActivationState activationState, Foundation.NSError error)
+public virtual void ActivationDidComplete (WCSession session, WCSessionActivationState activationState, Foundation.NSError error)
-public abstract void DidBecomeInactive (WCSession session)
+public virtual void DidBecomeInactive (WCSession session)
-public abstract void DidDeactivate (WCSession session)
+public virtual void DidDeactivate (WCSession session)

Added methods:

public virtual void DidFinishFileTransfer (WCSession session, WCSessionFileTransfer fileTransfer, Foundation.NSError error);
public virtual void DidFinishUserInfoTransfer (WCSession session, WCSessionUserInfoTransfer userInfoTransfer, Foundation.NSError error);
public virtual void DidReceiveApplicationContext (WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> applicationContext);
public virtual void DidReceiveFile (WCSession session, WCSessionFile file);
public virtual void DidReceiveMessage (WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> message);
public virtual void DidReceiveMessage (WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> message, WCSessionReplyHandler replyHandler);
public virtual void DidReceiveMessageData (WCSession session, Foundation.NSData messageData);
public virtual void DidReceiveMessageData (WCSession session, Foundation.NSData messageData, WCSessionReplyDataHandler replyHandler);
public virtual void DidReceiveUserInfo (WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> userInfo);
public virtual void SessionReachabilityDidChange (WCSession session);
public virtual void SessionWatchStateDidChange (WCSession session);

Namespace WebKit

Type Changed: WebKit.IWKDownloadDelegate

Modified methods:

-public abstract void DecideDestination (WKDownload download, Foundation.NSUrlResponse response, string suggestedFilename, System.Action%LESSERTHANREPLACEMENT%Foundation.NSUrl%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void DecideDestination (WKDownload download, Foundation.NSUrlResponse response, string suggestedFilename, System.Action%LESSERTHANREPLACEMENT%Foundation.NSUrl%GREATERTHANREPLACEMENT% completionHandler)

Added methods:

public virtual void DidFail (WKDownload download, Foundation.NSError error, Foundation.NSData resumeData);
public virtual void DidFinish (WKDownload download);
public virtual void DidReceiveAuthenticationChallenge (WKDownload download, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<Foundation.NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);
public virtual void WillPerformHttpRedirection (WKDownload download, Foundation.NSHttpUrlResponse response, Foundation.NSUrlRequest request, System.Action<WKDownloadRedirectPolicy> decisionHandler);

Type Changed: WebKit.IWKHttpCookieStoreObserver

Added method:

public virtual void CookiesDidChangeInCookieStore (WKHttpCookieStore cookieStore);

Type Changed: WebKit.IWKNavigationDelegate

Added methods:

public virtual void ContentProcessDidTerminate (WKWebView webView);
public virtual void DecidePolicy (WKWebView webView, WKNavigationAction navigationAction, System.Action<WKNavigationActionPolicy> decisionHandler);
public virtual void DecidePolicy (WKWebView webView, WKNavigationResponse navigationResponse, System.Action<WKNavigationResponsePolicy> decisionHandler);
public virtual void DecidePolicy (WKWebView webView, WKNavigationAction navigationAction, WKWebpagePreferences preferences, System.Action<WKNavigationActionPolicy,WebKit.WKWebpagePreferences> decisionHandler);
public virtual void DidCommitNavigation (WKWebView webView, WKNavigation navigation);
public virtual void DidFailNavigation (WKWebView webView, WKNavigation navigation, Foundation.NSError error);
public virtual void DidFailProvisionalNavigation (WKWebView webView, WKNavigation navigation, Foundation.NSError error);
public virtual void DidFinishNavigation (WKWebView webView, WKNavigation navigation);
public virtual void DidReceiveAuthenticationChallenge (WKWebView webView, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<Foundation.NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);
public virtual void DidReceiveServerRedirectForProvisionalNavigation (WKWebView webView, WKNavigation navigation);
public virtual void DidStartProvisionalNavigation (WKWebView webView, WKNavigation navigation);
public virtual void NavigationActionDidBecomeDownload (WKWebView webView, WKNavigationAction navigationAction, WKDownload download);
public virtual void NavigationResponseDidBecomeDownload (WKWebView webView, WKNavigationResponse navigationResponse, WKDownload download);
public virtual void ShouldAllowDeprecatedTls (WKWebView webView, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<bool> decisionHandler);

Type Changed: WebKit.IWKPreviewActionItem

Modified properties:

-public abstract Foundation.NSString Identifier { get; }
+public virtual Foundation.NSString Identifier { get; }

Type Changed: WebKit.IWKScriptMessageHandler

Modified methods:

-public abstract void DidReceiveScriptMessage (WKUserContentController userContentController, WKScriptMessage message)
+public virtual void DidReceiveScriptMessage (WKUserContentController userContentController, WKScriptMessage message)

Type Changed: WebKit.IWKScriptMessageHandlerWithReply

Modified methods:

-public abstract void DidReceiveScriptMessage (WKUserContentController userContentController, WKScriptMessage message, System.Action%LESSERTHANREPLACEMENT%Foundation.NSObject,Foundation.NSString%GREATERTHANREPLACEMENT% replyHandler)
+public virtual void DidReceiveScriptMessage (WKUserContentController userContentController, WKScriptMessage message, System.Action%LESSERTHANREPLACEMENT%Foundation.NSObject,Foundation.NSString%GREATERTHANREPLACEMENT% replyHandler)

Type Changed: WebKit.IWKUIDelegate

Added methods:

public virtual void CommitPreviewingViewController (WKWebView webView, UIKit.UIViewController previewingViewController);
public virtual void ContextMenuDidEnd (WKWebView webView, WKContextMenuElementInfo elementInfo);
public virtual void ContextMenuWillPresent (WKWebView webView, WKContextMenuElementInfo elementInfo);
public virtual WKWebView CreateWebView (WKWebView webView, WKWebViewConfiguration configuration, WKNavigationAction navigationAction, WKWindowFeatures windowFeatures);
public virtual void DidClose (WKWebView webView);
public virtual UIKit.UIViewController GetPreviewingViewController (WKWebView webView, WKPreviewElementInfo elementInfo, IWKPreviewActionItem[] previewActions);
public virtual void RequestDeviceOrientationAndMotionPermission (WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame, System.Action<WKPermissionDecision> decisionHandler);
public virtual System.Threading.Tasks.Task<WKPermissionDecision> RequestDeviceOrientationAndMotionPermissionAsync (WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame);
public virtual void RequestMediaCapturePermission (WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame, WKMediaCaptureType type, System.Action<WKPermissionDecision> decisionHandler);
public virtual System.Threading.Tasks.Task<WKPermissionDecision> RequestMediaCapturePermissionAsync (WKWebView webView, WKSecurityOrigin origin, WKFrameInfo frame, WKMediaCaptureType type);
public virtual void RunJavaScriptAlertPanel (WKWebView webView, string message, WKFrameInfo frame, System.Action completionHandler);
public virtual void RunJavaScriptConfirmPanel (WKWebView webView, string message, WKFrameInfo frame, System.Action<bool> completionHandler);
public virtual void RunJavaScriptTextInputPanel (WKWebView webView, string prompt, string defaultText, WKFrameInfo frame, System.Action<string> completionHandler);
public virtual void SetContextMenuConfiguration (WKWebView webView, WKContextMenuElementInfo elementInfo, System.Action<UIKit.UIContextMenuConfiguration> completionHandler);
public virtual bool ShouldPreviewElement (WKWebView webView, WKPreviewElementInfo elementInfo);
public virtual void ShowLockDownMode (WKWebView webView, string firstUseMessage, System.Action<WKDialogResult> completionHandler);
public virtual System.Threading.Tasks.Task<WKDialogResult> ShowLockDownModeAsync (WKWebView webView, string firstUseMessage);
public virtual void WillCommitContextMenu (WKWebView webView, WKContextMenuElementInfo elementInfo, UIKit.IUIContextMenuInteractionCommitAnimating animator);
public virtual void WillDismissEditMenu (WKWebView webView, UIKit.IUIEditMenuInteractionAnimating animator);
public virtual void WillPresentEditMenu (WKWebView webView, UIKit.IUIEditMenuInteractionAnimating animator);

Type Changed: WebKit.IWKUrlSchemeHandler

Modified methods:

-public abstract void StartUrlSchemeTask (WKWebView webView, IWKUrlSchemeTask urlSchemeTask)
+public virtual void StartUrlSchemeTask (WKWebView webView, IWKUrlSchemeTask urlSchemeTask)
-public abstract void StopUrlSchemeTask (WKWebView webView, IWKUrlSchemeTask urlSchemeTask)
+public virtual void StopUrlSchemeTask (WKWebView webView, IWKUrlSchemeTask urlSchemeTask)

Type Changed: WebKit.IWKUrlSchemeTask

Modified properties:

-public abstract Foundation.NSUrlRequest Request { get; }
+public virtual Foundation.NSUrlRequest Request { get; }

Modified methods:

-public abstract void DidFailWithError (Foundation.NSError error)
+public virtual void DidFailWithError (Foundation.NSError error)
-public abstract void DidFinish ()
+public virtual void DidFinish ()
-public abstract void DidReceiveData (Foundation.NSData data)
+public virtual void DidReceiveData (Foundation.NSData data)
-public abstract void DidReceiveResponse (Foundation.NSUrlResponse response)
+public virtual void DidReceiveResponse (Foundation.NSUrlResponse response)

Type Changed: WebKit.WKHttpCookieStore

Added methods:

public virtual void GetCookiePolicy (System.Action<WKCookiePolicy> completionHandler);
public virtual System.Threading.Tasks.Task<WKCookiePolicy> GetCookiePolicyAsync ();
public virtual void SetCookiePolicy (WKCookiePolicy policy, System.Action completionHandler);
public virtual System.Threading.Tasks.Task SetCookiePolicyAsync (WKCookiePolicy policy);

Type Changed: WebKit.WKPdfConfiguration

Added property:

public virtual bool AllowTransparentBackground { get; set; }

Type Changed: WebKit.WKPreferences

Added property:

public virtual WKInactiveSchedulingPolicy InactiveSchedulingPolicy { get; set; }

Type Changed: WebKit.WKWebViewConfiguration

Added property:

public virtual bool AllowsInlinePredictions { get; set; }

Type Changed: WebKit.WKWebsiteDataStore

Added property:

public virtual Foundation.NSUuid Identifier { get; }

Added methods:

public static WKWebsiteDataStore Create (Foundation.NSUuid identifier);
public static void FetchAllDataStoreIdentifiers (System.Action<Foundation.NSArray<Foundation.NSUuid>> completionHandler);
public static System.Threading.Tasks.Task<Foundation.NSArray<Foundation.NSUuid>> FetchAllDataStoreIdentifiersAsync ();
public static void Remove (Foundation.NSUuid identifier, System.Action<Foundation.NSError> completionHandler);
public static System.Threading.Tasks.Task RemoveAsync (Foundation.NSUuid identifier);

Type Changed: WebKit.WKWebsiteDataType

Added properties:

public static Foundation.NSString HashSalt { get; }
public static Foundation.NSString MediaKeys { get; }
public static Foundation.NSString SearchFieldRecentSearches { get; }

New Type: WebKit.WKCookiePolicy

[Serializable]
public enum WKCookiePolicy {
	Allow = 0,
	Disallow = 1,
}

New Type: WebKit.WKInactiveSchedulingPolicy

[Serializable]
public enum WKInactiveSchedulingPolicy {
	None = 2,
	Suspend = 0,
	Throttle = 1,
}

New Namespace CryptoTokenKit

New Type: CryptoTokenKit.ITKSmartCardTokenDriverDelegate

public interface ITKSmartCardTokenDriverDelegate : ITKTokenDriverDelegate, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual TKSmartCardToken CreateToken (TKSmartCardTokenDriver driver, TKSmartCard smartCard, Foundation.NSData aid, out Foundation.NSError error);
}

New Type: CryptoTokenKit.ITKSmartCardUserInteractionDelegate

public interface ITKSmartCardUserInteractionDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void CharacterEntered (TKSmartCardUserInteraction interaction);
	public virtual void CorrectionKeyPressed (TKSmartCardUserInteraction interaction);
	public virtual void InvalidCharacterEntered (TKSmartCardUserInteraction interaction);
	public virtual void NewPinConfirmationRequested (TKSmartCardUserInteraction interaction);
	public virtual void NewPinRequested (TKSmartCardUserInteraction interaction);
	public virtual void OldPinRequested (TKSmartCardUserInteraction interaction);
	public virtual void ValidationKeyPressed (TKSmartCardUserInteraction interaction);
}

New Type: CryptoTokenKit.ITKTokenDelegate

public interface ITKTokenDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual TKTokenSession CreateSession (TKToken token, out Foundation.NSError error);
	public virtual void TerminateSession (TKToken token, TKTokenSession session);
}

New Type: CryptoTokenKit.ITKTokenDriverDelegate

public interface ITKTokenDriverDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual TKToken GetToken (TKTokenDriver driver, TKTokenConfiguration configuration, out Foundation.NSError error);
	public virtual void TerminateToken (TKTokenDriver driver, TKToken token);
}

New Type: CryptoTokenKit.ITKTokenSessionDelegate

public interface ITKTokenSessionDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual TKTokenAuthOperation BeginAuthentication (TKTokenSession session, TKTokenOperation operation, Foundation.NSObject constraint, out Foundation.NSError error);
	public virtual Foundation.NSData DecryptData (TKTokenSession session, Foundation.NSData ciphertext, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm, out Foundation.NSError error);
	public virtual Foundation.NSData PerformKeyExchange (TKTokenSession session, Foundation.NSData otherPartyPublicKeyData, Foundation.NSObject objectId, TKTokenKeyAlgorithm algorithm, TKTokenKeyExchangeParameters parameters, out Foundation.NSError error);
	public virtual Foundation.NSData SignData (TKTokenSession session, Foundation.NSData dataToSign, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm, out Foundation.NSError error);
	public virtual bool SupportsOperation (TKTokenSession session, TKTokenOperation operation, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm);
}

New Type: CryptoTokenKit.TKBerTlvRecord

public class TKBerTlvRecord : CryptoTokenKit.TKTlvRecord {
	// constructors
	public TKBerTlvRecord ();
	protected TKBerTlvRecord (Foundation.NSObjectFlag t);
	protected TKBerTlvRecord (ObjCRuntime.NativeHandle handle);
	public TKBerTlvRecord (ulong tag, TKTlvRecord[] records);
	public TKBerTlvRecord (ulong tag, Foundation.NSData value);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public static Foundation.NSData GetData (ulong tag);
}

New Type: CryptoTokenKit.TKCompactTlvRecord

public class TKCompactTlvRecord : CryptoTokenKit.TKTlvRecord {
	// constructors
	public TKCompactTlvRecord ();
	protected TKCompactTlvRecord (Foundation.NSObjectFlag t);
	protected TKCompactTlvRecord (ObjCRuntime.NativeHandle handle);
	public TKCompactTlvRecord (byte tag, Foundation.NSData value);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CryptoTokenKit.TKErrorCode

[Serializable]
public enum TKErrorCode {
	AuthenticationFailed = -5,
	AuthenticationNeeded = -9,
	BadParameter = -8,
	CanceledByUser = -4,
	CommunicationError = -2,
	CorruptedData = -3,
	NotImplemented = -1,
	ObjectNotFound = -6,
	TokenNotFound = -7,
}

New Type: CryptoTokenKit.TKErrorCodeExtensions

public static class TKErrorCodeExtensions {
	// methods
	public static Foundation.NSString GetDomain (this TKErrorCode self);
}

New Type: CryptoTokenKit.TKGetSlotCallback

public sealed delegate TKGetSlotCallback : System.MulticastDelegate {
	// constructors
	public TKGetSlotCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (TKSmartCardSlot slot, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (TKSmartCardSlot slot);
}

New Type: CryptoTokenKit.TKSimpleTlvRecord

public class TKSimpleTlvRecord : CryptoTokenKit.TKTlvRecord {
	// constructors
	public TKSimpleTlvRecord ();
	protected TKSimpleTlvRecord (Foundation.NSObjectFlag t);
	protected TKSimpleTlvRecord (ObjCRuntime.NativeHandle handle);
	public TKSimpleTlvRecord (byte tag, Foundation.NSData value);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CryptoTokenKit.TKSmartCard

public class TKSmartCard : Foundation.NSObject {
	// constructors
	public TKSmartCard ();
	protected TKSmartCard (Foundation.NSObjectFlag t);
	protected TKSmartCard (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual TKSmartCardProtocol AllowedProtocols { get; set; }
	public virtual byte Cla { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSObject Context { get; set; }
	public virtual TKSmartCardProtocol CurrentProtocol { get; }
	public virtual bool Sensitive { get; set; }
	public virtual TKSmartCardSlot Slot { get; }
	public virtual bool UseCommandChaining { get; set; }
	public virtual bool UseExtendedLength { get; set; }
	public virtual bool Valid { get; }
	// methods
	public virtual void BeginSession (System.Action<System.Boolean,Foundation.NSError> reply);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> BeginSessionAsync ();
	public virtual TKSmartCardUserInteractionForSecurePinChange CreateUserInteractionForSecurePinChange (TKSmartCardPinFormat pinFormat, Foundation.NSData apdu, IntPtr currentPinByteOffset, IntPtr newPinByteOffset);
	public virtual TKSmartCardUserInteractionForSecurePinVerification CreateUserInteractionForSecurePinVerification (TKSmartCardPinFormat pinFormat, Foundation.NSData apdu, IntPtr pinByteOffset);
	protected override void Dispose (bool disposing);
	public virtual void EndSession ();
	public virtual bool ExecuteBlock (out Foundation.NSError error, TKSmartCardExecuteCallback block);
	public virtual void Send (byte ins, byte p1, byte p2, Foundation.NSData requestData, Foundation.NSNumber le, TKSmartCardSendCallback reply);
	public virtual Foundation.NSData Send (byte ins, byte p1, byte p2, Foundation.NSData requestData, Foundation.NSNumber le, out ushort sw, out Foundation.NSError error);
	public virtual void TransmitRequest (Foundation.NSData request, System.Action<Foundation.NSData,Foundation.NSError> reply);
	public virtual System.Threading.Tasks.Task<Foundation.NSData> TransmitRequestAsync (Foundation.NSData request);
}

New Type: CryptoTokenKit.TKSmartCardAtr

public class TKSmartCardAtr : Foundation.NSObject {
	// constructors
	public TKSmartCardAtr (Foundation.NSData bytes);
	protected TKSmartCardAtr (Foundation.NSObjectFlag t);
	protected TKSmartCardAtr (ObjCRuntime.NativeHandle handle);
	public TKSmartCardAtr (System.Func<int> source);
	// properties
	public virtual Foundation.NSData Bytes { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData HistoricalBytes { get; }
	public virtual TKCompactTlvRecord[] HistoricalRecords { get; }
	public virtual TKSmartCardProtocol[] Protocols { get; }
	// methods
	public virtual TKSmartCardAtrInterfaceGroup GetInterfaceGroup (TKSmartCardProtocol protocol);
	public virtual TKSmartCardAtrInterfaceGroup GetInterfaceGroup (IntPtr index);
}

New Type: CryptoTokenKit.TKSmartCardAtrInterfaceGroup

public class TKSmartCardAtrInterfaceGroup : Foundation.NSObject {
	// constructors
	public TKSmartCardAtrInterfaceGroup ();
	protected TKSmartCardAtrInterfaceGroup (Foundation.NSObjectFlag t);
	protected TKSmartCardAtrInterfaceGroup (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSNumber Protocol { get; }
	public virtual Foundation.NSNumber TA { get; }
	public virtual Foundation.NSNumber TB { get; }
	public virtual Foundation.NSNumber TC { get; }
}

New Type: CryptoTokenKit.TKSmartCardExecuteCallback

public sealed delegate TKSmartCardExecuteCallback : System.MulticastDelegate {
	// constructors
	public TKSmartCardExecuteCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (out Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual bool EndInvoke (out Foundation.NSError error, System.IAsyncResult result);
	public virtual bool Invoke (out Foundation.NSError error);
}

New Type: CryptoTokenKit.TKSmartCardPinCharset

[Serializable]
public enum TKSmartCardPinCharset {
	Alphanumeric = 1,
	Numeric = 0,
	UpperAlphanumeric = 2,
}

New Type: CryptoTokenKit.TKSmartCardPinCompletion

[Serializable]
[Flags]
public enum TKSmartCardPinCompletion {
	Key = 2,
	MaxLength = 1,
	Timeout = 4,
}

New Type: CryptoTokenKit.TKSmartCardPinConfirmation

[Serializable]
[Flags]
public enum TKSmartCardPinConfirmation {
	Current = 2,
	New = 1,
	None = 0,
}

New Type: CryptoTokenKit.TKSmartCardPinEncoding

[Serializable]
public enum TKSmartCardPinEncoding {
	Ascii = 1,
	Bcd = 2,
	Binary = 0,
}

New Type: CryptoTokenKit.TKSmartCardPinFormat

public class TKSmartCardPinFormat : Foundation.NSObject {
	// constructors
	public TKSmartCardPinFormat ();
	protected TKSmartCardPinFormat (Foundation.NSObjectFlag t);
	protected TKSmartCardPinFormat (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual TKSmartCardPinCharset Charset { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual TKSmartCardPinEncoding Encoding { get; set; }
	public virtual IntPtr MaxPinLength { get; set; }
	public virtual IntPtr MinPinLength { get; set; }
	public virtual IntPtr PinBitOffset { get; set; }
	public virtual IntPtr PinBlockByteLength { get; set; }
	public virtual TKSmartCardPinJustification PinJustification { get; set; }
	public virtual IntPtr PinLengthBitOffset { get; set; }
	public virtual IntPtr PinLengthBitSize { get; set; }
}

New Type: CryptoTokenKit.TKSmartCardPinJustification

[Serializable]
public enum TKSmartCardPinJustification {
	Left = 0,
	Right = 1,
}

New Type: CryptoTokenKit.TKSmartCardProtocol

[Serializable]
[Flags]
public enum TKSmartCardProtocol {
	Any = 65535,
	None = 0,
	T0 = 1,
	T1 = 2,
	T15 = 32768,
}

New Type: CryptoTokenKit.TKSmartCardSendCallback

public sealed delegate TKSmartCardSendCallback : System.MulticastDelegate {
	// constructors
	public TKSmartCardSendCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSData replyData, ushort sq, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSData replyData, ushort sq, Foundation.NSError error);
}

New Type: CryptoTokenKit.TKSmartCardSlot

public class TKSmartCardSlot : Foundation.NSObject {
	// constructors
	public TKSmartCardSlot ();
	protected TKSmartCardSlot (Foundation.NSObjectFlag t);
	protected TKSmartCardSlot (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual TKSmartCardAtr Atr { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IntPtr MaxInputLength { get; }
	public virtual IntPtr MaxOutputLength { get; }
	public virtual string Name { get; }
	public virtual TKSmartCardSlotState State { get; }
	// methods
	public virtual TKSmartCard MakeSmartCard ();
}

New Type: CryptoTokenKit.TKSmartCardSlotManager

public class TKSmartCardSlotManager : Foundation.NSObject {
	// constructors
	protected TKSmartCardSlotManager (Foundation.NSObjectFlag t);
	protected TKSmartCardSlotManager (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static TKSmartCardSlotManager DefaultManager { get; }
	public virtual string[] SlotNames { get; }
	// methods
	public virtual TKSmartCardSlot GetSlot (string name);
	public virtual void GetSlot (string name, TKGetSlotCallback reply);
	public virtual System.Threading.Tasks.Task<TKSmartCardSlot> GetSlotAsync (string name);
}

New Type: CryptoTokenKit.TKSmartCardSlotState

[Serializable]
public enum TKSmartCardSlotState {
	Empty = 1,
	Missing = 0,
	MuteCard = 3,
	Probing = 2,
	ValidCard = 4,
}

New Type: CryptoTokenKit.TKSmartCardToken

public class TKSmartCardToken : CryptoTokenKit.TKToken {
	// constructors
	public TKSmartCardToken ();
	protected TKSmartCardToken (Foundation.NSObjectFlag t);
	protected TKSmartCardToken (ObjCRuntime.NativeHandle handle);
	public TKSmartCardToken (TKSmartCard smartCard, Foundation.NSData aid, string instanceId, TKSmartCardTokenDriver tokenDriver);
	// properties
	public virtual Foundation.NSData Aid { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CryptoTokenKit.TKSmartCardTokenDriver

public class TKSmartCardTokenDriver : CryptoTokenKit.TKTokenDriver {
	// constructors
	public TKSmartCardTokenDriver ();
	protected TKSmartCardTokenDriver (Foundation.NSObjectFlag t);
	protected TKSmartCardTokenDriver (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CryptoTokenKit.TKSmartCardTokenSession

public class TKSmartCardTokenSession : CryptoTokenKit.TKTokenSession {
	// constructors
	public TKSmartCardTokenSession ();
	public TKSmartCardTokenSession (TKToken token);
	protected TKSmartCardTokenSession (Foundation.NSObjectFlag t);
	protected TKSmartCardTokenSession (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual TKSmartCard SmartCard { get; }
}

New Type: CryptoTokenKit.TKSmartCardUserInteraction

public class TKSmartCardUserInteraction : Foundation.NSObject {
	// constructors
	public TKSmartCardUserInteraction ();
	protected TKSmartCardUserInteraction (Foundation.NSObjectFlag t);
	protected TKSmartCardUserInteraction (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public ITKSmartCardUserInteractionDelegate Delegate { get; set; }
	public virtual double InitialTimeout { get; set; }
	public virtual double InteractionTimeout { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public virtual bool Cancel ();
	protected override void Dispose (bool disposing);
	public virtual void Run (System.Action<System.Boolean,Foundation.NSError> reply);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> RunAsync ();
}

New Type: CryptoTokenKit.TKSmartCardUserInteractionDelegate_Extensions

public static class TKSmartCardUserInteractionDelegate_Extensions {
	// methods
	public static void CharacterEntered (this ITKSmartCardUserInteractionDelegate This, TKSmartCardUserInteraction interaction);
	public static void CorrectionKeyPressed (this ITKSmartCardUserInteractionDelegate This, TKSmartCardUserInteraction interaction);
	public static void InvalidCharacterEntered (this ITKSmartCardUserInteractionDelegate This, TKSmartCardUserInteraction interaction);
	public static void NewPinConfirmationRequested (this ITKSmartCardUserInteractionDelegate This, TKSmartCardUserInteraction interaction);
	public static void NewPinRequested (this ITKSmartCardUserInteractionDelegate This, TKSmartCardUserInteraction interaction);
	public static void OldPinRequested (this ITKSmartCardUserInteractionDelegate This, TKSmartCardUserInteraction interaction);
	public static void ValidationKeyPressed (this ITKSmartCardUserInteractionDelegate This, TKSmartCardUserInteraction interaction);
}

New Type: CryptoTokenKit.TKSmartCardUserInteractionForPinOperation

public class TKSmartCardUserInteractionForPinOperation : CryptoTokenKit.TKSmartCardUserInteraction {
	// constructors
	public TKSmartCardUserInteractionForPinOperation ();
	protected TKSmartCardUserInteractionForPinOperation (Foundation.NSObjectFlag t);
	protected TKSmartCardUserInteractionForPinOperation (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSLocale Locale { get; set; }
	public virtual TKSmartCardPinCompletion PinCompletion { get; set; }
	public virtual Foundation.NSNumber[] PinMessageIndices { get; set; }
	public virtual Foundation.NSData ResultData { get; set; }
	public virtual ushort ResultSW { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CryptoTokenKit.TKSmartCardUserInteractionForSecurePinChange

public class TKSmartCardUserInteractionForSecurePinChange : CryptoTokenKit.TKSmartCardUserInteractionForPinOperation {
	// constructors
	public TKSmartCardUserInteractionForSecurePinChange ();
	protected TKSmartCardUserInteractionForSecurePinChange (Foundation.NSObjectFlag t);
	protected TKSmartCardUserInteractionForSecurePinChange (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual TKSmartCardPinConfirmation PinConfirmation { get; set; }
}

New Type: CryptoTokenKit.TKSmartCardUserInteractionForSecurePinVerification

public class TKSmartCardUserInteractionForSecurePinVerification : CryptoTokenKit.TKSmartCardUserInteractionForPinOperation {
	// constructors
	public TKSmartCardUserInteractionForSecurePinVerification ();
	protected TKSmartCardUserInteractionForSecurePinVerification (Foundation.NSObjectFlag t);
	protected TKSmartCardUserInteractionForSecurePinVerification (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CryptoTokenKit.TKTlvRecord

public class TKTlvRecord : Foundation.NSObject {
	// constructors
	protected TKTlvRecord (Foundation.NSObjectFlag t);
	protected TKTlvRecord (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData Data { get; }
	public virtual ulong Tag { get; }
	public virtual Foundation.NSData Value { get; }
	// methods
	public static TKTlvRecord CreateRecord (Foundation.NSData data);
	public static TKTlvRecord[] CreateSequenceOfRecords (Foundation.NSData data);
}

New Type: CryptoTokenKit.TKToken

public class TKToken : Foundation.NSObject {
	// constructors
	protected TKToken (Foundation.NSObjectFlag t);
	protected TKToken (ObjCRuntime.NativeHandle handle);
	public TKToken (TKTokenDriver tokenDriver, string instanceId);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual TKTokenConfiguration Configuration { get; }
	public ITKTokenDelegate Delegate { get; set; }
	public virtual TKTokenKeychainContents KeychainContents { get; }
	public virtual TKTokenDriver TokenDriver { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CryptoTokenKit.TKTokenAuthOperation

public class TKTokenAuthOperation : Foundation.NSObject, Foundation.INSCoding, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public TKTokenAuthOperation ();
	public TKTokenAuthOperation (Foundation.NSCoder coder);
	protected TKTokenAuthOperation (Foundation.NSObjectFlag t);
	protected TKTokenAuthOperation (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual bool Finish (out Foundation.NSError error);
}

New Type: CryptoTokenKit.TKTokenConfiguration

public class TKTokenConfiguration : Foundation.NSObject {
	// constructors
	protected TKTokenConfiguration (Foundation.NSObjectFlag t);
	protected TKTokenConfiguration (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData ConfigurationData { get; set; }
	public virtual string InstanceId { get; }
	public virtual TKTokenKeychainItem[] KeychainItems { get; set; }
	// methods
	public virtual TKTokenKeychainCertificate GetCertificate (Foundation.NSObject objectId, out Foundation.NSError error);
	public virtual TKTokenKeychainKey GetKey (Foundation.NSObject objectId, out Foundation.NSError error);
}

New Type: CryptoTokenKit.TKTokenDelegate

public abstract class TKTokenDelegate : Foundation.NSObject, ITKTokenDelegate, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected TKTokenDelegate ();
	protected TKTokenDelegate (Foundation.NSObjectFlag t);
	protected TKTokenDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual TKTokenSession CreateSession (TKToken token, out Foundation.NSError error);
	public virtual void TerminateSession (TKToken token, TKTokenSession session);
}

New Type: CryptoTokenKit.TKTokenDelegate_Extensions

public static class TKTokenDelegate_Extensions {
	// methods
	public static void TerminateSession (this ITKTokenDelegate This, TKToken token, TKTokenSession session);
}

New Type: CryptoTokenKit.TKTokenDriver

public class TKTokenDriver : Foundation.NSObject {
	// constructors
	public TKTokenDriver ();
	protected TKTokenDriver (Foundation.NSObjectFlag t);
	protected TKTokenDriver (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public ITKTokenDriverDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CryptoTokenKit.TKTokenDriverConfiguration

public class TKTokenDriverConfiguration : Foundation.NSObject {
	// constructors
	protected TKTokenDriverConfiguration (Foundation.NSObjectFlag t);
	protected TKTokenDriverConfiguration (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string ClassId { get; }
	public static Foundation.NSDictionary<Foundation.NSString,CryptoTokenKit.TKTokenDriverConfiguration> DriverConfigurations { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,CryptoTokenKit.TKTokenConfiguration> TokenConfigurations { get; }
	// methods
	public virtual TKTokenConfiguration AddTokenConfiguration (string instanceId);
	public virtual void RemoveTokenConfiguration (string instanceId);
}

New Type: CryptoTokenKit.TKTokenDriverDelegate

public class TKTokenDriverDelegate : Foundation.NSObject, ITKTokenDriverDelegate, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public TKTokenDriverDelegate ();
	protected TKTokenDriverDelegate (Foundation.NSObjectFlag t);
	protected TKTokenDriverDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual TKToken GetToken (TKTokenDriver driver, TKTokenConfiguration configuration, out Foundation.NSError error);
	public virtual void TerminateToken (TKTokenDriver driver, TKToken token);
}

New Type: CryptoTokenKit.TKTokenDriverDelegate_Extensions

public static class TKTokenDriverDelegate_Extensions {
	// methods
	public static TKToken GetToken (this ITKTokenDriverDelegate This, TKTokenDriver driver, TKTokenConfiguration configuration, out Foundation.NSError error);
	public static void TerminateToken (this ITKTokenDriverDelegate This, TKTokenDriver driver, TKToken token);
}

New Type: CryptoTokenKit.TKTokenKeyAlgorithm

public class TKTokenKeyAlgorithm : Foundation.NSObject {
	// constructors
	protected TKTokenKeyAlgorithm (Foundation.NSObjectFlag t);
	protected TKTokenKeyAlgorithm (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual bool IsAlgorithm (Security.SecKeyAlgorithm algorithm);
	public virtual bool SupportsAlgorithm (Security.SecKeyAlgorithm algorithm);
}

New Type: CryptoTokenKit.TKTokenKeyExchangeParameters

public class TKTokenKeyExchangeParameters : Foundation.NSObject {
	// constructors
	public TKTokenKeyExchangeParameters ();
	protected TKTokenKeyExchangeParameters (Foundation.NSObjectFlag t);
	protected TKTokenKeyExchangeParameters (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IntPtr RequestedSize { get; }
	public virtual Foundation.NSData SharedInfo { get; }
}

New Type: CryptoTokenKit.TKTokenKeychainCertificate

public class TKTokenKeychainCertificate : CryptoTokenKit.TKTokenKeychainItem {
	// constructors
	public TKTokenKeychainCertificate ();
	protected TKTokenKeychainCertificate (Foundation.NSObjectFlag t);
	protected TKTokenKeychainCertificate (ObjCRuntime.NativeHandle handle);
	public TKTokenKeychainCertificate (Security.SecKeyAlgorithm certificateRef, Foundation.NSObject objectId);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData Data { get; }
}

New Type: CryptoTokenKit.TKTokenKeychainContents

public class TKTokenKeychainContents : Foundation.NSObject {
	// constructors
	protected TKTokenKeychainContents (Foundation.NSObjectFlag t);
	protected TKTokenKeychainContents (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual TKTokenKeychainItem[] Items { get; }
	// methods
	public virtual void Fill (TKTokenKeychainItem[] items);
	public virtual TKTokenKeychainCertificate GetCertificate (Foundation.NSObject objectId, out Foundation.NSError error);
	public virtual TKTokenKeychainKey GetKey (Foundation.NSObject objectId, out Foundation.NSError error);
}

New Type: CryptoTokenKit.TKTokenKeychainItem

public class TKTokenKeychainItem : Foundation.NSObject {
	// constructors
	public TKTokenKeychainItem (Foundation.NSObject objectId);
	protected TKTokenKeychainItem (Foundation.NSObjectFlag t);
	protected TKTokenKeychainItem (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSDictionary<Foundation.NSNumber,Foundation.NSObject> Constraints { get; set; }
	public virtual string Label { get; set; }
	public virtual Foundation.NSObject ObjectId { get; }
}

New Type: CryptoTokenKit.TKTokenKeychainKey

public class TKTokenKeychainKey : CryptoTokenKit.TKTokenKeychainItem {
	// constructors
	public TKTokenKeychainKey ();
	protected TKTokenKeychainKey (Foundation.NSObjectFlag t);
	protected TKTokenKeychainKey (ObjCRuntime.NativeHandle handle);
	public TKTokenKeychainKey (Security.SecCertificate certificate, Foundation.NSObject objectId);
	public TKTokenKeychainKey (IntPtr certificate, Foundation.NSObject objectId);
	// properties
	public virtual Foundation.NSData ApplicationTag { get; set; }
	public virtual bool CanDecrypt { get; set; }
	public virtual bool CanPerformKeyExchange { get; set; }
	public virtual bool CanSign { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IntPtr KeySizeInBits { get; set; }
	public virtual string KeyType { get; set; }
	public virtual Foundation.NSData PublicKeyData { get; set; }
	public virtual Foundation.NSData PublicKeyHash { get; set; }
	public virtual bool SuitableForLogin { get; set; }
}

New Type: CryptoTokenKit.TKTokenOperation

[Serializable]
public enum TKTokenOperation {
	DecryptData = 3,
	None = 0,
	PerformKeyExchange = 4,
	ReadData = 1,
	SignData = 2,
}

New Type: CryptoTokenKit.TKTokenPasswordAuthOperation

public class TKTokenPasswordAuthOperation : CryptoTokenKit.TKTokenAuthOperation {
	// constructors
	public TKTokenPasswordAuthOperation ();
	public TKTokenPasswordAuthOperation (Foundation.NSCoder coder);
	protected TKTokenPasswordAuthOperation (Foundation.NSObjectFlag t);
	protected TKTokenPasswordAuthOperation (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Password { get; set; }
}

New Type: CryptoTokenKit.TKTokenSession

public class TKTokenSession : Foundation.NSObject {
	// constructors
	public TKTokenSession (TKToken token);
	protected TKTokenSession (Foundation.NSObjectFlag t);
	protected TKTokenSession (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public ITKTokenSessionDelegate Delegate { get; set; }
	public virtual TKToken Token { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CryptoTokenKit.TKTokenSessionDelegate

public class TKTokenSessionDelegate : Foundation.NSObject, ITKTokenSessionDelegate, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public TKTokenSessionDelegate ();
	protected TKTokenSessionDelegate (Foundation.NSObjectFlag t);
	protected TKTokenSessionDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual TKTokenAuthOperation BeginAuthentication (TKTokenSession session, TKTokenOperation operation, Foundation.NSObject constraint, out Foundation.NSError error);
	public virtual Foundation.NSData DecryptData (TKTokenSession session, Foundation.NSData ciphertext, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm, out Foundation.NSError error);
	public virtual Foundation.NSData PerformKeyExchange (TKTokenSession session, Foundation.NSData otherPartyPublicKeyData, Foundation.NSObject objectId, TKTokenKeyAlgorithm algorithm, TKTokenKeyExchangeParameters parameters, out Foundation.NSError error);
	public virtual Foundation.NSData SignData (TKTokenSession session, Foundation.NSData dataToSign, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm, out Foundation.NSError error);
	public virtual bool SupportsOperation (TKTokenSession session, TKTokenOperation operation, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm);
}

New Type: CryptoTokenKit.TKTokenSessionDelegate_Extensions

public static class TKTokenSessionDelegate_Extensions {
	// methods
	public static TKTokenAuthOperation BeginAuthentication (this ITKTokenSessionDelegate This, TKTokenSession session, TKTokenOperation operation, Foundation.NSObject constraint, out Foundation.NSError error);
	public static Foundation.NSData DecryptData (this ITKTokenSessionDelegate This, TKTokenSession session, Foundation.NSData ciphertext, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm, out Foundation.NSError error);
	public static Foundation.NSData PerformKeyExchange (this ITKTokenSessionDelegate This, TKTokenSession session, Foundation.NSData otherPartyPublicKeyData, Foundation.NSObject objectId, TKTokenKeyAlgorithm algorithm, TKTokenKeyExchangeParameters parameters, out Foundation.NSError error);
	public static Foundation.NSData SignData (this ITKTokenSessionDelegate This, TKTokenSession session, Foundation.NSData dataToSign, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm, out Foundation.NSError error);
	public static bool SupportsOperation (this ITKTokenSessionDelegate This, TKTokenSession session, TKTokenOperation operation, Foundation.NSObject keyObjectId, TKTokenKeyAlgorithm algorithm);
}

New Type: CryptoTokenKit.TKTokenSmartCardPinAuthOperation

public class TKTokenSmartCardPinAuthOperation : CryptoTokenKit.TKTokenAuthOperation {
	// constructors
	public TKTokenSmartCardPinAuthOperation ();
	public TKTokenSmartCardPinAuthOperation (Foundation.NSCoder coder);
	protected TKTokenSmartCardPinAuthOperation (Foundation.NSObjectFlag t);
	protected TKTokenSmartCardPinAuthOperation (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual Foundation.NSData ApduTemplate { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Pin { get; set; }
	public virtual IntPtr PinByteOffset { get; set; }
	public virtual TKSmartCardPinFormat PinFormat { get; set; }
	public virtual TKSmartCard SmartCard { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CryptoTokenKit.TKTokenWatcher

public class TKTokenWatcher : Foundation.NSObject {
	// constructors
	public TKTokenWatcher ();
	protected TKTokenWatcher (Foundation.NSObjectFlag t);
	protected TKTokenWatcher (ObjCRuntime.NativeHandle handle);
	public TKTokenWatcher (System.Action<Foundation.NSString> insertionHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string[] TokenIds { get; }
	// methods
	public virtual void AddRemovalHandler (System.Action<Foundation.NSString> removalHandler, string tokenId);
	public virtual TKTokenWatcherTokenInfo GetTokenInfo (string tokenId);
	public virtual void SetInsertionHandler (System.Action<Foundation.NSString> insertionHandler);
}

New Type: CryptoTokenKit.TKTokenWatcherTokenInfo

public class TKTokenWatcherTokenInfo : Foundation.NSObject {
	// constructors
	protected TKTokenWatcherTokenInfo (Foundation.NSObjectFlag t);
	protected TKTokenWatcherTokenInfo (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string DriverName { get; }
	public virtual string SlotName { get; }
	public virtual string TokenId { get; }
}

New Namespace DeviceDiscoveryExtension

New Type: DeviceDiscoveryExtension.DDDevice

public class DDDevice : Foundation.NSObject {
	// constructors
	protected DDDevice (Foundation.NSObjectFlag t);
	protected DDDevice (ObjCRuntime.NativeHandle handle);
	public DDDevice (string displayName, DDDeviceCategory category, UniformTypeIdentifiers.UTType protocolType, string identifier);
	// properties
	public virtual Foundation.NSUuid BluetoothIdentifier { get; set; }
	public virtual DDDeviceCategory Category { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string DisplayName { get; set; }
	public virtual string Identifier { get; set; }
	public virtual string MediaContentSubtitle { get; set; }
	public virtual string MediaContentTitle { get; set; }
	public virtual DDDeviceMediaPlaybackState MediaPlaybackState { get; set; }
	public Network.NWEndpoint NetworkEndpoint { get; set; }
	public virtual DDDeviceProtocol Protocol { get; set; }
	public virtual UniformTypeIdentifiers.UTType ProtocolType { get; set; }
	public virtual DDDeviceState State { get; set; }
	public virtual bool SupportsGrouping { get; set; }
	public virtual Foundation.NSData TxtRecordData { get; set; }
	public virtual Foundation.NSUrl Url { get; set; }
}

New Type: DeviceDiscoveryExtension.DDDeviceCategory

[Serializable]
public enum DDDeviceCategory {
	DesktopComputer = 5,
	HiFiSpeaker = 0,
	HiFiSpeakerMultiple = 1,
	LaptopComputer = 4,
	Tv = 3,
	TvWithMediaBox = 2,
}

New Type: DeviceDiscoveryExtension.DDDeviceEvent

public class DDDeviceEvent : Foundation.NSObject {
	// constructors
	protected DDDeviceEvent (Foundation.NSObjectFlag t);
	protected DDDeviceEvent (ObjCRuntime.NativeHandle handle);
	public DDDeviceEvent (DDEventType type, DDDevice device);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual DDDevice Device { get; }
	public virtual DDEventType EventType { get; }
}

New Type: DeviceDiscoveryExtension.DDDeviceMediaPlaybackState

[Serializable]
public enum DDDeviceMediaPlaybackState {
	NoContent = 0,
	Paused = 1,
	Playing = 2,
}

New Type: DeviceDiscoveryExtension.DDDeviceProtocol

[Serializable]
public enum DDDeviceProtocol {
	Dial = 1,
	Invalid = 0,
}

New Type: DeviceDiscoveryExtension.DDDeviceProtocolStrings

public static class DDDeviceProtocolStrings {
	// properties
	public static Foundation.NSString Dial { get; }
	public static Foundation.NSString Invalid { get; }
}

New Type: DeviceDiscoveryExtension.DDDeviceState

[Serializable]
public enum DDDeviceState {
	Activated = 20,
	Activating = 10,
	Authorized = 25,
	Invalid = 0,
	Invalidating = 30,
}

New Type: DeviceDiscoveryExtension.DDDiscoverySession

public class DDDiscoverySession : Foundation.NSObject {
	// constructors
	public DDDiscoverySession ();
	protected DDDiscoverySession (Foundation.NSObjectFlag t);
	protected DDDiscoverySession (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual void ReportEvent (DDDeviceEvent inEvent);
}

New Type: DeviceDiscoveryExtension.DDErrorCode

[Serializable]
public enum DDErrorCode {
	BadParameter = 350001,
	Internal = 350004,
	MissingEntitlement = 350005,
	Permission = 350006,
	Success = 0,
	Timeout = 350003,
	Unknown = 350000,
	Unsupported = 350002,
}

New Type: DeviceDiscoveryExtension.DDErrorCodeExtensions

public static class DDErrorCodeExtensions {
	// methods
	public static Foundation.NSString GetDomain (this DDErrorCode self);
}

New Type: DeviceDiscoveryExtension.DDEventType

[Serializable]
public enum DDEventType {
	DeviceChanged = 42,
	DeviceFound = 40,
	DeviceLost = 41,
	Unknown = 0,
}

New Namespace SafetyKit

New Type: SafetyKit.ISACrashDetectionDelegate

public interface ISACrashDetectionDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidDetectEvent (SACrashDetectionManager crashDetectionManager, SACrashDetectionEvent event);
}

New Type: SafetyKit.ISAEmergencyResponseDelegate

public interface ISAEmergencyResponseDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidUpdateVoiceCallStatus (SAEmergencyResponseManager emergencyResponseManager, SAEmergencyResponseManagerVoiceCallStatus voiceCallStatus);
}

New Type: SafetyKit.SAAuthorizationStatus

[Serializable]
public enum SAAuthorizationStatus {
	Authorized = 2,
	Denied = 1,
	NotDetermined = 0,
}

New Type: SafetyKit.SACrashDetectionDelegate

public class SACrashDetectionDelegate : Foundation.NSObject, ObjCRuntime.INativeObject, ISACrashDetectionDelegate, System.IDisposable {
	// constructors
	public SACrashDetectionDelegate ();
	protected SACrashDetectionDelegate (Foundation.NSObjectFlag t);
	protected SACrashDetectionDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void DidDetectEvent (SACrashDetectionManager crashDetectionManager, SACrashDetectionEvent event);
}

New Type: SafetyKit.SACrashDetectionDelegate_Extensions

public static class SACrashDetectionDelegate_Extensions {
	// methods
	public static void DidDetectEvent (this ISACrashDetectionDelegate This, SACrashDetectionManager crashDetectionManager, SACrashDetectionEvent event);
}

New Type: SafetyKit.SACrashDetectionEvent

public class SACrashDetectionEvent : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SACrashDetectionEvent (Foundation.NSCoder coder);
	protected SACrashDetectionEvent (Foundation.NSObjectFlag t);
	protected SACrashDetectionEvent (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual CoreLocation.CLLocation Location { get; }
	public virtual SACrashDetectionEventResponse Response { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SafetyKit.SACrashDetectionEventResponse

[Serializable]
public enum SACrashDetectionEventResponse {
	Attempted = 0,
	Disabled = 1,
}

New Type: SafetyKit.SACrashDetectionManager

public class SACrashDetectionManager : Foundation.NSObject {
	// constructors
	public SACrashDetectionManager ();
	protected SACrashDetectionManager (Foundation.NSObjectFlag t);
	protected SACrashDetectionManager (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual SAAuthorizationStatus AuthorizationStatus { get; }
	public static bool Available { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public ISACrashDetectionDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void RequestAuthorization (SACrashDetectionManagerRequestAuthorizationCompletionHandler handler);
	public virtual System.Threading.Tasks.Task<SAAuthorizationStatus> RequestAuthorizationAsync ();
}

New Type: SafetyKit.SACrashDetectionManagerRequestAuthorizationCompletionHandler

public sealed delegate SACrashDetectionManagerRequestAuthorizationCompletionHandler : System.MulticastDelegate {
	// constructors
	public SACrashDetectionManagerRequestAuthorizationCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (SAAuthorizationStatus status, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (SAAuthorizationStatus status, Foundation.NSError error);
}

New Type: SafetyKit.SAEmergencyResponseDelegate

public class SAEmergencyResponseDelegate : Foundation.NSObject, ObjCRuntime.INativeObject, ISAEmergencyResponseDelegate, System.IDisposable {
	// constructors
	public SAEmergencyResponseDelegate ();
	protected SAEmergencyResponseDelegate (Foundation.NSObjectFlag t);
	protected SAEmergencyResponseDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void DidUpdateVoiceCallStatus (SAEmergencyResponseManager emergencyResponseManager, SAEmergencyResponseManagerVoiceCallStatus voiceCallStatus);
}

New Type: SafetyKit.SAEmergencyResponseDelegate_Extensions

public static class SAEmergencyResponseDelegate_Extensions {
	// methods
	public static void DidUpdateVoiceCallStatus (this ISAEmergencyResponseDelegate This, SAEmergencyResponseManager emergencyResponseManager, SAEmergencyResponseManagerVoiceCallStatus voiceCallStatus);
}

New Type: SafetyKit.SAEmergencyResponseManager

public class SAEmergencyResponseManager : Foundation.NSObject {
	// constructors
	public SAEmergencyResponseManager ();
	protected SAEmergencyResponseManager (Foundation.NSObjectFlag t);
	protected SAEmergencyResponseManager (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public ISAEmergencyResponseDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public virtual void DialVoiceCall (string phoneNumber, SAEmergencyResponseManagerDialVoiceCallCompletionHandler handler);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> DialVoiceCallAsync (string phoneNumber);
	protected override void Dispose (bool disposing);
}

New Type: SafetyKit.SAEmergencyResponseManagerDialVoiceCallCompletionHandler

public sealed delegate SAEmergencyResponseManagerDialVoiceCallCompletionHandler : System.MulticastDelegate {
	// constructors
	public SAEmergencyResponseManagerDialVoiceCallCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (bool requestAccepted, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (bool requestAccepted, Foundation.NSError error);
}

New Type: SafetyKit.SAEmergencyResponseManagerVoiceCallStatus

[Serializable]
public enum SAEmergencyResponseManagerVoiceCallStatus {
	Active = 1,
	Dialing = 0,
	Disconnected = 2,
	Failed = 3,
}

New Type: SafetyKit.SAErrorCode

[Serializable]
public enum SAErrorCode {
	InvalidArgument = 3,
	NotAllowed = 2,
	NotAuthorized = 1,
	OperationFailed = 4,
}

New Type: SafetyKit.SAErrorCodeExtensions

public static class SAErrorCodeExtensions {
	// methods
	public static Foundation.NSString GetDomain (this SAErrorCode self);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment